rugged 0.27.7 → 0.27.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/rugged/version.rb +1 -1
- data/vendor/libgit2/AUTHORS +1 -0
- data/vendor/libgit2/CMakeLists.txt +99 -51
- data/vendor/libgit2/COPYING +28 -0
- data/vendor/libgit2/cmake/Modules/AddCFlagIfSupported.cmake +15 -1
- data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.c.in +29 -0
- data/vendor/libgit2/cmake/Modules/CheckPrototypeDefinition.cmake +96 -0
- data/vendor/libgit2/cmake/Modules/EnableWarnings.cmake +9 -8
- data/vendor/libgit2/cmake/Modules/FindCoreFoundation.cmake +2 -2
- data/vendor/libgit2/cmake/Modules/FindGSSAPI.cmake +1 -1
- data/vendor/libgit2/cmake/Modules/FindGSSFramework.cmake +28 -0
- data/vendor/libgit2/cmake/Modules/FindIconv.cmake +11 -6
- data/vendor/libgit2/cmake/Modules/FindPCRE.cmake +38 -0
- data/vendor/libgit2/cmake/Modules/FindPCRE2.cmake +37 -0
- data/vendor/libgit2/cmake/Modules/FindSecurity.cmake +2 -2
- data/vendor/libgit2/cmake/Modules/FindStatNsec.cmake +6 -0
- data/vendor/libgit2/cmake/Modules/PkgBuildConfig.cmake +110 -0
- data/vendor/libgit2/cmake/Modules/SelectGSSAPI.cmake +53 -0
- data/vendor/libgit2/cmake/Modules/SelectHTTPSBackend.cmake +124 -0
- data/vendor/libgit2/cmake/Modules/SelectHashes.cmake +66 -0
- data/vendor/libgit2/deps/http-parser/http_parser.c +11 -6
- data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +21 -0
- data/vendor/libgit2/deps/ntlmclient/compat.h +33 -0
- data/vendor/libgit2/deps/ntlmclient/crypt.h +64 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.c +120 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_commoncrypto.h +18 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.c +145 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_mbedtls.h +18 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +130 -0
- data/vendor/libgit2/deps/ntlmclient/crypt_openssl.h +21 -0
- data/vendor/libgit2/deps/ntlmclient/ntlm.c +1420 -0
- data/vendor/libgit2/deps/ntlmclient/ntlm.h +174 -0
- data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +320 -0
- data/vendor/libgit2/deps/ntlmclient/unicode.h +36 -0
- data/vendor/libgit2/deps/ntlmclient/unicode_builtin.c +445 -0
- data/vendor/libgit2/deps/ntlmclient/unicode_iconv.c +201 -0
- data/vendor/libgit2/deps/ntlmclient/utf8.h +1257 -0
- data/vendor/libgit2/deps/ntlmclient/util.c +21 -0
- data/vendor/libgit2/deps/ntlmclient/util.h +14 -0
- data/vendor/libgit2/deps/pcre/CMakeLists.txt +140 -0
- data/vendor/libgit2/deps/pcre/COPYING +5 -0
- data/vendor/libgit2/deps/pcre/cmake/COPYING-CMAKE-SCRIPTS +22 -0
- data/vendor/libgit2/deps/pcre/cmake/FindEditline.cmake +17 -0
- data/vendor/libgit2/deps/pcre/cmake/FindPackageHandleStandardArgs.cmake +58 -0
- data/vendor/libgit2/deps/pcre/cmake/FindReadline.cmake +29 -0
- data/vendor/libgit2/deps/pcre/config.h.in +57 -0
- data/vendor/libgit2/deps/pcre/pcre.h +641 -0
- data/vendor/libgit2/deps/pcre/pcre_byte_order.c +319 -0
- data/vendor/libgit2/deps/pcre/pcre_chartables.c +198 -0
- data/vendor/libgit2/deps/pcre/pcre_compile.c +9800 -0
- data/vendor/libgit2/deps/pcre/pcre_config.c +190 -0
- data/vendor/libgit2/deps/pcre/pcre_dfa_exec.c +3676 -0
- data/vendor/libgit2/deps/pcre/pcre_exec.c +7173 -0
- data/vendor/libgit2/deps/pcre/pcre_fullinfo.c +245 -0
- data/vendor/libgit2/deps/pcre/pcre_get.c +669 -0
- data/vendor/libgit2/deps/pcre/pcre_globals.c +86 -0
- data/vendor/libgit2/deps/pcre/pcre_internal.h +2787 -0
- data/vendor/libgit2/deps/pcre/pcre_jit_compile.c +11913 -0
- data/vendor/libgit2/deps/pcre/pcre_maketables.c +156 -0
- data/vendor/libgit2/deps/pcre/pcre_newline.c +210 -0
- data/vendor/libgit2/deps/pcre/pcre_ord2utf8.c +94 -0
- data/vendor/libgit2/deps/pcre/pcre_printint.c +834 -0
- data/vendor/libgit2/deps/pcre/pcre_refcount.c +92 -0
- data/vendor/libgit2/deps/pcre/pcre_string_utils.c +211 -0
- data/vendor/libgit2/deps/pcre/pcre_study.c +1686 -0
- data/vendor/libgit2/deps/pcre/pcre_tables.c +727 -0
- data/vendor/libgit2/deps/pcre/pcre_ucd.c +3644 -0
- data/vendor/libgit2/deps/pcre/pcre_valid_utf8.c +301 -0
- data/vendor/libgit2/deps/pcre/pcre_version.c +98 -0
- data/vendor/libgit2/deps/pcre/pcre_xclass.c +268 -0
- data/vendor/libgit2/deps/pcre/pcreposix.c +421 -0
- data/vendor/libgit2/deps/pcre/pcreposix.h +117 -0
- data/vendor/libgit2/deps/pcre/ucp.h +224 -0
- data/vendor/libgit2/deps/winhttp/COPYING.GPL +993 -0
- data/vendor/libgit2/deps/winhttp/COPYING.LGPL +502 -0
- data/vendor/libgit2/deps/zlib/CMakeLists.txt +1 -0
- data/vendor/libgit2/deps/zlib/COPYING +27 -0
- data/vendor/libgit2/deps/zlib/adler32.c +0 -7
- data/vendor/libgit2/deps/zlib/crc32.c +0 -7
- data/vendor/libgit2/include/git2/annotated_commit.h +9 -0
- data/vendor/libgit2/include/git2/apply.h +149 -0
- data/vendor/libgit2/include/git2/attr.h +20 -13
- data/vendor/libgit2/include/git2/blame.h +4 -4
- data/vendor/libgit2/include/git2/blob.h +44 -12
- data/vendor/libgit2/include/git2/buffer.h +20 -26
- data/vendor/libgit2/include/git2/cert.h +135 -0
- data/vendor/libgit2/include/git2/checkout.h +53 -21
- data/vendor/libgit2/include/git2/cherrypick.h +3 -3
- data/vendor/libgit2/include/git2/clone.h +5 -5
- data/vendor/libgit2/include/git2/commit.h +25 -3
- data/vendor/libgit2/include/git2/common.h +35 -10
- data/vendor/libgit2/include/git2/config.h +29 -19
- data/vendor/libgit2/include/git2/cred.h +308 -0
- data/vendor/libgit2/include/git2/deprecated.h +493 -0
- data/vendor/libgit2/include/git2/describe.h +4 -4
- data/vendor/libgit2/include/git2/diff.h +177 -135
- data/vendor/libgit2/include/git2/errors.h +53 -46
- data/vendor/libgit2/include/git2/filter.h +8 -0
- data/vendor/libgit2/include/git2/index.h +74 -52
- data/vendor/libgit2/include/git2/indexer.h +76 -6
- data/vendor/libgit2/include/git2/merge.h +25 -10
- data/vendor/libgit2/include/git2/net.h +0 -5
- data/vendor/libgit2/include/git2/notes.h +1 -1
- data/vendor/libgit2/include/git2/object.h +17 -29
- data/vendor/libgit2/include/git2/odb.h +12 -11
- data/vendor/libgit2/include/git2/odb_backend.h +10 -9
- data/vendor/libgit2/include/git2/oid.h +2 -2
- data/vendor/libgit2/include/git2/pack.h +14 -3
- data/vendor/libgit2/include/git2/proxy.h +5 -3
- data/vendor/libgit2/include/git2/rebase.h +46 -2
- data/vendor/libgit2/include/git2/refs.h +34 -16
- data/vendor/libgit2/include/git2/remote.h +111 -14
- data/vendor/libgit2/include/git2/repository.h +69 -34
- data/vendor/libgit2/include/git2/revert.h +1 -1
- data/vendor/libgit2/include/git2/revwalk.h +7 -7
- data/vendor/libgit2/include/git2/signature.h +2 -2
- data/vendor/libgit2/include/git2/stash.h +5 -5
- data/vendor/libgit2/include/git2/status.h +26 -17
- data/vendor/libgit2/include/git2/submodule.h +23 -6
- data/vendor/libgit2/include/git2/sys/alloc.h +18 -18
- data/vendor/libgit2/include/git2/sys/commit.h +1 -1
- data/vendor/libgit2/include/git2/sys/config.h +13 -13
- data/vendor/libgit2/include/git2/sys/cred.h +90 -0
- data/vendor/libgit2/include/git2/sys/filter.h +6 -6
- data/vendor/libgit2/include/git2/sys/merge.h +3 -3
- data/vendor/libgit2/include/git2/sys/odb_backend.h +66 -22
- data/vendor/libgit2/include/git2/sys/path.h +14 -5
- data/vendor/libgit2/include/git2/sys/refdb_backend.h +76 -40
- data/vendor/libgit2/include/git2/sys/repository.h +5 -1
- data/vendor/libgit2/include/git2/sys/stream.h +92 -12
- data/vendor/libgit2/include/git2/sys/transport.h +129 -83
- data/vendor/libgit2/include/git2/tag.h +13 -4
- data/vendor/libgit2/include/git2/trace.h +2 -2
- data/vendor/libgit2/include/git2/transport.h +11 -311
- data/vendor/libgit2/include/git2/tree.h +4 -4
- data/vendor/libgit2/include/git2/types.h +25 -106
- data/vendor/libgit2/include/git2/version.h +3 -3
- data/vendor/libgit2/include/git2/worktree.h +5 -5
- data/vendor/libgit2/include/git2.h +4 -0
- data/vendor/libgit2/src/CMakeLists.txt +104 -235
- data/vendor/libgit2/src/alloc.c +14 -18
- data/vendor/libgit2/src/{stdalloc.c → allocators/stdalloc.c} +7 -8
- data/vendor/libgit2/src/{stdalloc.h → allocators/stdalloc.h} +4 -4
- data/vendor/libgit2/src/allocators/win32_crtdbg.c +118 -0
- data/vendor/libgit2/src/{transports/cred.h → allocators/win32_crtdbg.h} +5 -4
- data/vendor/libgit2/src/annotated_commit.c +18 -11
- data/vendor/libgit2/src/apply.c +535 -28
- data/vendor/libgit2/src/apply.h +3 -1
- data/vendor/libgit2/src/array.h +2 -2
- data/vendor/libgit2/src/attr.c +77 -71
- data/vendor/libgit2/src/attr_file.c +203 -117
- data/vendor/libgit2/src/attr_file.h +9 -9
- data/vendor/libgit2/src/attrcache.c +49 -51
- data/vendor/libgit2/src/attrcache.h +2 -1
- data/vendor/libgit2/src/blame.c +38 -18
- data/vendor/libgit2/src/blame.h +1 -1
- data/vendor/libgit2/src/blame_git.c +29 -15
- data/vendor/libgit2/src/blob.c +123 -37
- data/vendor/libgit2/src/blob.h +19 -2
- data/vendor/libgit2/src/branch.c +47 -23
- data/vendor/libgit2/src/buf_text.c +7 -6
- data/vendor/libgit2/src/buffer.c +60 -53
- data/vendor/libgit2/src/cache.c +38 -45
- data/vendor/libgit2/src/cache.h +3 -3
- data/vendor/libgit2/src/cc-compat.h +20 -3
- data/vendor/libgit2/src/checkout.c +77 -67
- data/vendor/libgit2/src/cherrypick.c +12 -6
- data/vendor/libgit2/src/clone.c +36 -14
- data/vendor/libgit2/src/clone.h +4 -0
- data/vendor/libgit2/src/commit.c +103 -48
- data/vendor/libgit2/src/commit.h +7 -0
- data/vendor/libgit2/src/commit_list.c +36 -78
- data/vendor/libgit2/src/commit_list.h +2 -2
- data/vendor/libgit2/src/common.h +24 -90
- data/vendor/libgit2/src/config.c +203 -176
- data/vendor/libgit2/src/config.h +8 -20
- data/vendor/libgit2/src/config_backend.h +96 -0
- data/vendor/libgit2/src/config_cache.c +41 -35
- data/vendor/libgit2/src/config_entries.c +229 -0
- data/vendor/libgit2/src/config_entries.h +24 -0
- data/vendor/libgit2/src/config_file.c +422 -680
- data/vendor/libgit2/src/config_mem.c +220 -0
- data/vendor/libgit2/src/config_parse.c +96 -68
- data/vendor/libgit2/src/config_parse.h +15 -14
- data/vendor/libgit2/src/config_snapshot.c +206 -0
- data/vendor/libgit2/src/crlf.c +219 -196
- data/vendor/libgit2/src/delta.c +25 -18
- data/vendor/libgit2/src/describe.c +42 -41
- data/vendor/libgit2/src/diff.c +52 -67
- data/vendor/libgit2/src/diff.h +2 -1
- data/vendor/libgit2/src/diff_driver.c +44 -46
- data/vendor/libgit2/src/diff_file.c +16 -14
- data/vendor/libgit2/src/diff_file.h +1 -1
- data/vendor/libgit2/src/diff_generate.c +158 -103
- data/vendor/libgit2/src/diff_generate.h +3 -3
- data/vendor/libgit2/src/diff_parse.c +4 -4
- data/vendor/libgit2/src/diff_print.c +34 -22
- data/vendor/libgit2/src/diff_stats.c +22 -7
- data/vendor/libgit2/src/diff_tform.c +18 -16
- data/vendor/libgit2/src/diff_xdiff.c +3 -3
- data/vendor/libgit2/src/errors.c +51 -39
- data/vendor/libgit2/src/errors.h +81 -0
- data/vendor/libgit2/src/features.h.in +9 -3
- data/vendor/libgit2/src/fetch.c +8 -3
- data/vendor/libgit2/src/fetchhead.c +12 -12
- data/vendor/libgit2/src/filebuf.c +28 -32
- data/vendor/libgit2/src/filebuf.h +2 -2
- data/vendor/libgit2/src/filter.c +47 -33
- data/vendor/libgit2/src/filter.h +0 -10
- data/vendor/libgit2/src/{fileops.c → futils.c} +70 -63
- data/vendor/libgit2/src/{fileops.h → futils.h} +6 -6
- data/vendor/libgit2/src/global.c +35 -55
- data/vendor/libgit2/src/global.h +0 -2
- data/vendor/libgit2/src/hash/sha1/collisiondetect.c +48 -0
- data/vendor/libgit2/src/hash/sha1/collisiondetect.h +19 -0
- data/vendor/libgit2/src/hash/{hash_common_crypto.h → sha1/common_crypto.c} +17 -17
- data/vendor/libgit2/src/hash/sha1/common_crypto.h +19 -0
- data/vendor/libgit2/src/hash/{hash_generic.c → sha1/generic.c} +22 -10
- data/vendor/libgit2/src/hash/{hash_generic.h → sha1/generic.h} +4 -10
- data/vendor/libgit2/src/hash/{hash_mbedtls.c → sha1/mbedtls.c} +15 -7
- data/vendor/libgit2/src/hash/{hash_mbedtls.h → sha1/mbedtls.h} +6 -7
- data/vendor/libgit2/src/hash/sha1/openssl.c +59 -0
- data/vendor/libgit2/src/hash/sha1/openssl.h +19 -0
- data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/sha1.c +14 -3
- data/vendor/libgit2/src/hash/{hash_win32.c → sha1/win32.c} +47 -37
- data/vendor/libgit2/src/hash/{hash_win32.h → sha1/win32.h} +6 -19
- data/vendor/libgit2/src/hash/sha1.h +38 -0
- data/vendor/libgit2/src/hash.c +61 -0
- data/vendor/libgit2/src/hash.h +20 -21
- data/vendor/libgit2/src/hashsig.c +5 -5
- data/vendor/libgit2/src/idxmap.c +107 -61
- data/vendor/libgit2/src/idxmap.h +153 -31
- data/vendor/libgit2/src/ignore.c +38 -42
- data/vendor/libgit2/src/index.c +264 -199
- data/vendor/libgit2/src/index.h +7 -1
- data/vendor/libgit2/src/indexer.c +338 -167
- data/vendor/libgit2/src/integer.h +71 -26
- data/vendor/libgit2/src/iterator.c +134 -62
- data/vendor/libgit2/src/iterator.h +15 -0
- data/vendor/libgit2/src/mailmap.c +8 -8
- data/vendor/libgit2/src/map.h +1 -1
- data/vendor/libgit2/src/merge.c +137 -93
- data/vendor/libgit2/src/merge_driver.c +11 -11
- data/vendor/libgit2/src/merge_file.c +2 -2
- data/vendor/libgit2/src/mwindow.c +24 -29
- data/vendor/libgit2/src/mwindow.h +4 -4
- data/vendor/libgit2/src/net.c +184 -0
- data/vendor/libgit2/src/net.h +36 -0
- data/vendor/libgit2/src/netops.c +55 -156
- data/vendor/libgit2/src/netops.h +3 -23
- data/vendor/libgit2/src/notes.c +14 -9
- data/vendor/libgit2/src/object.c +120 -69
- data/vendor/libgit2/src/object.h +22 -9
- data/vendor/libgit2/src/object_api.c +8 -8
- data/vendor/libgit2/src/odb.c +111 -88
- data/vendor/libgit2/src/odb.h +8 -7
- data/vendor/libgit2/src/odb_loose.c +58 -47
- data/vendor/libgit2/src/odb_mempack.c +21 -34
- data/vendor/libgit2/src/odb_pack.c +17 -13
- data/vendor/libgit2/src/offmap.c +53 -35
- data/vendor/libgit2/src/offmap.h +108 -21
- data/vendor/libgit2/src/oid.c +12 -7
- data/vendor/libgit2/src/oidmap.c +49 -47
- data/vendor/libgit2/src/oidmap.h +101 -24
- data/vendor/libgit2/src/pack-objects.c +87 -86
- data/vendor/libgit2/src/pack-objects.h +2 -8
- data/vendor/libgit2/src/pack.c +94 -96
- data/vendor/libgit2/src/pack.h +16 -18
- data/vendor/libgit2/src/parse.c +17 -4
- data/vendor/libgit2/src/parse.h +3 -3
- data/vendor/libgit2/src/patch.c +3 -3
- data/vendor/libgit2/src/patch_generate.c +18 -18
- data/vendor/libgit2/src/patch_parse.c +147 -79
- data/vendor/libgit2/src/path.c +207 -62
- data/vendor/libgit2/src/path.h +14 -0
- data/vendor/libgit2/src/pathspec.c +18 -18
- data/vendor/libgit2/src/pool.c +26 -22
- data/vendor/libgit2/src/pool.h +7 -7
- data/vendor/libgit2/src/posix.c +10 -10
- data/vendor/libgit2/src/posix.h +12 -1
- data/vendor/libgit2/src/proxy.c +8 -3
- data/vendor/libgit2/src/push.c +35 -29
- data/vendor/libgit2/src/push.h +2 -1
- data/vendor/libgit2/src/reader.c +265 -0
- data/vendor/libgit2/src/reader.h +107 -0
- data/vendor/libgit2/src/rebase.c +97 -38
- data/vendor/libgit2/src/refdb.c +15 -3
- data/vendor/libgit2/src/refdb_fs.c +318 -222
- data/vendor/libgit2/src/reflog.c +13 -15
- data/vendor/libgit2/src/refs.c +122 -89
- data/vendor/libgit2/src/refs.h +5 -3
- data/vendor/libgit2/src/refspec.c +27 -33
- data/vendor/libgit2/src/regexp.c +221 -0
- data/vendor/libgit2/src/regexp.h +97 -0
- data/vendor/libgit2/src/remote.c +229 -178
- data/vendor/libgit2/src/remote.h +11 -2
- data/vendor/libgit2/src/repository.c +227 -172
- data/vendor/libgit2/src/repository.h +52 -40
- data/vendor/libgit2/src/reset.c +7 -7
- data/vendor/libgit2/src/revert.c +11 -6
- data/vendor/libgit2/src/revparse.c +46 -46
- data/vendor/libgit2/src/revwalk.c +89 -54
- data/vendor/libgit2/src/revwalk.h +20 -0
- data/vendor/libgit2/src/settings.c +22 -9
- data/vendor/libgit2/src/signature.c +15 -13
- data/vendor/libgit2/src/sortedcache.c +22 -36
- data/vendor/libgit2/src/sortedcache.h +1 -1
- data/vendor/libgit2/src/stash.c +56 -76
- data/vendor/libgit2/src/status.c +27 -21
- data/vendor/libgit2/src/stream.h +17 -2
- data/vendor/libgit2/src/streams/mbedtls.c +100 -80
- data/vendor/libgit2/src/streams/mbedtls.h +5 -2
- data/vendor/libgit2/src/streams/openssl.c +93 -81
- data/vendor/libgit2/src/streams/openssl.h +5 -2
- data/vendor/libgit2/src/streams/registry.c +118 -0
- data/vendor/libgit2/src/streams/registry.h +19 -0
- data/vendor/libgit2/src/streams/socket.c +55 -30
- data/vendor/libgit2/src/streams/stransport.c +57 -32
- data/vendor/libgit2/src/streams/stransport.h +5 -0
- data/vendor/libgit2/src/streams/tls.c +48 -20
- data/vendor/libgit2/src/streams/tls.h +12 -4
- data/vendor/libgit2/src/strmap.c +47 -74
- data/vendor/libgit2/src/strmap.h +108 -33
- data/vendor/libgit2/src/submodule.c +190 -169
- data/vendor/libgit2/src/submodule.h +1 -1
- data/vendor/libgit2/src/sysdir.c +25 -15
- data/vendor/libgit2/src/tag.c +39 -26
- data/vendor/libgit2/src/tag.h +2 -1
- data/vendor/libgit2/src/trace.c +2 -2
- data/vendor/libgit2/src/trace.h +2 -2
- data/vendor/libgit2/src/trailer.c +46 -32
- data/vendor/libgit2/src/transaction.c +30 -29
- data/vendor/libgit2/src/transport.c +3 -3
- data/vendor/libgit2/src/transports/auth.c +14 -10
- data/vendor/libgit2/src/transports/auth.h +10 -3
- data/vendor/libgit2/src/transports/auth_negotiate.c +31 -16
- data/vendor/libgit2/src/transports/auth_negotiate.h +2 -2
- data/vendor/libgit2/src/transports/auth_ntlm.c +223 -0
- data/vendor/libgit2/src/transports/auth_ntlm.h +35 -0
- data/vendor/libgit2/src/transports/cred.c +24 -24
- data/vendor/libgit2/src/transports/git.c +25 -30
- data/vendor/libgit2/src/transports/http.c +871 -335
- data/vendor/libgit2/src/transports/http.h +2 -0
- data/vendor/libgit2/src/transports/local.c +28 -28
- data/vendor/libgit2/src/transports/smart.c +64 -46
- data/vendor/libgit2/src/transports/smart.h +5 -6
- data/vendor/libgit2/src/transports/smart_pkt.c +162 -151
- data/vendor/libgit2/src/transports/smart_protocol.c +64 -94
- data/vendor/libgit2/src/transports/ssh.c +76 -65
- data/vendor/libgit2/src/transports/winhttp.c +328 -319
- data/vendor/libgit2/src/tree-cache.c +21 -14
- data/vendor/libgit2/src/tree.c +119 -112
- data/vendor/libgit2/src/tree.h +1 -0
- data/vendor/libgit2/src/unix/map.c +3 -3
- data/vendor/libgit2/src/unix/posix.h +1 -11
- data/vendor/libgit2/src/userdiff.h +3 -1
- data/vendor/libgit2/src/util.c +154 -93
- data/vendor/libgit2/src/util.h +19 -23
- data/vendor/libgit2/src/vector.c +15 -10
- data/vendor/libgit2/src/wildmatch.c +320 -0
- data/vendor/libgit2/src/wildmatch.h +23 -0
- data/vendor/libgit2/src/win32/dir.c +3 -3
- data/vendor/libgit2/src/win32/findfile.c +1 -1
- data/vendor/libgit2/src/win32/map.c +9 -11
- data/vendor/libgit2/src/win32/msvc-compat.h +6 -0
- data/vendor/libgit2/src/win32/path_w32.c +113 -9
- data/vendor/libgit2/src/win32/path_w32.h +18 -29
- data/vendor/libgit2/src/win32/posix.h +1 -4
- data/vendor/libgit2/src/win32/posix_w32.c +69 -44
- data/vendor/libgit2/src/win32/precompiled.h +0 -2
- data/vendor/libgit2/src/win32/thread.c +5 -10
- data/vendor/libgit2/src/win32/w32_buffer.c +9 -5
- data/vendor/libgit2/src/win32/w32_common.h +39 -0
- data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.c +2 -95
- data/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.h +0 -2
- data/vendor/libgit2/src/win32/w32_stack.c +6 -11
- data/vendor/libgit2/src/win32/w32_stack.h +3 -3
- data/vendor/libgit2/src/win32/w32_util.c +27 -64
- data/vendor/libgit2/src/win32/w32_util.h +5 -49
- data/vendor/libgit2/src/worktree.c +44 -30
- data/vendor/libgit2/src/xdiff/xdiffi.c +5 -5
- data/vendor/libgit2/src/xdiff/xhistogram.c +1 -1
- data/vendor/libgit2/src/xdiff/xmerge.c +27 -15
- data/vendor/libgit2/src/xdiff/xpatience.c +3 -0
- data/vendor/libgit2/src/zstream.c +4 -4
- metadata +115 -38
- data/vendor/libgit2/deps/regex/CMakeLists.txt +0 -2
- data/vendor/libgit2/deps/regex/config.h +0 -7
- data/vendor/libgit2/deps/regex/regcomp.c +0 -3857
- data/vendor/libgit2/deps/regex/regex.c +0 -92
- data/vendor/libgit2/deps/regex/regex.h +0 -582
- data/vendor/libgit2/deps/regex/regex_internal.c +0 -1744
- data/vendor/libgit2/deps/regex/regex_internal.h +0 -819
- data/vendor/libgit2/deps/regex/regexec.c +0 -4369
- data/vendor/libgit2/include/git2/inttypes.h +0 -309
- data/vendor/libgit2/include/git2/sys/time.h +0 -31
- data/vendor/libgit2/libgit2.pc.in +0 -13
- data/vendor/libgit2/src/config_file.h +0 -73
- data/vendor/libgit2/src/fnmatch.c +0 -248
- data/vendor/libgit2/src/fnmatch.h +0 -48
- data/vendor/libgit2/src/hash/hash_collisiondetect.h +0 -47
- data/vendor/libgit2/src/hash/hash_openssl.h +0 -59
- data/vendor/libgit2/src/streams/curl.c +0 -385
- data/vendor/libgit2/src/streams/curl.h +0 -17
- /data/vendor/libgit2/deps/http-parser/{LICENSE-MIT → COPYING} +0 -0
- /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/sha1.h +0 -0
- /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/ubc_check.c +0 -0
- /data/vendor/libgit2/src/hash/{sha1dc → sha1/sha1dc}/ubc_check.h +0 -0
data/vendor/libgit2/src/rebase.c
CHANGED
|
@@ -152,8 +152,8 @@ GIT_INLINE(int) rebase_readint(
|
|
|
152
152
|
if ((error = rebase_readfile(asc_out, state_path, filename)) < 0)
|
|
153
153
|
return error;
|
|
154
154
|
|
|
155
|
-
if (
|
|
156
|
-
|
|
155
|
+
if (git__strntol32(&num, asc_out->ptr, asc_out->size, &eol, 10) < 0 || num < 0 || *eol) {
|
|
156
|
+
git_error_set(GIT_ERROR_REBASE, "the file '%s' contains an invalid numeric value", filename);
|
|
157
157
|
return -1;
|
|
158
158
|
}
|
|
159
159
|
|
|
@@ -171,7 +171,7 @@ GIT_INLINE(int) rebase_readoid(
|
|
|
171
171
|
return error;
|
|
172
172
|
|
|
173
173
|
if (str_out->size != GIT_OID_HEXSZ || git_oid_fromstr(out, str_out->ptr) < 0) {
|
|
174
|
-
|
|
174
|
+
git_error_set(GIT_ERROR_REBASE, "the file '%s' contains an invalid object ID", filename);
|
|
175
175
|
return -1;
|
|
176
176
|
}
|
|
177
177
|
|
|
@@ -231,7 +231,7 @@ static int rebase_open_merge(git_rebase *rebase)
|
|
|
231
231
|
|
|
232
232
|
/* Read cmt.* */
|
|
233
233
|
git_array_init_to_size(rebase->operations, end);
|
|
234
|
-
|
|
234
|
+
GIT_ERROR_CHECK_ARRAY(rebase->operations);
|
|
235
235
|
|
|
236
236
|
for (i = 0; i < end; i++) {
|
|
237
237
|
git_buf_clear(&cmt);
|
|
@@ -241,7 +241,7 @@ static int rebase_open_merge(git_rebase *rebase)
|
|
|
241
241
|
goto done;
|
|
242
242
|
|
|
243
243
|
operation = rebase_operation_alloc(rebase, GIT_REBASE_OPERATION_PICK, &id, NULL);
|
|
244
|
-
|
|
244
|
+
GIT_ERROR_CHECK_ALLOC(operation);
|
|
245
245
|
}
|
|
246
246
|
|
|
247
247
|
/* Read 'onto_name' */
|
|
@@ -261,18 +261,18 @@ done:
|
|
|
261
261
|
static int rebase_alloc(git_rebase **out, const git_rebase_options *rebase_opts)
|
|
262
262
|
{
|
|
263
263
|
git_rebase *rebase = git__calloc(1, sizeof(git_rebase));
|
|
264
|
-
|
|
264
|
+
GIT_ERROR_CHECK_ALLOC(rebase);
|
|
265
265
|
|
|
266
266
|
*out = NULL;
|
|
267
267
|
|
|
268
268
|
if (rebase_opts)
|
|
269
269
|
memcpy(&rebase->options, rebase_opts, sizeof(git_rebase_options));
|
|
270
270
|
else
|
|
271
|
-
|
|
271
|
+
git_rebase_options_init(&rebase->options, GIT_REBASE_OPTIONS_VERSION);
|
|
272
272
|
|
|
273
273
|
if (rebase_opts && rebase_opts->rewrite_notes_ref) {
|
|
274
274
|
rebase->options.rewrite_notes_ref = git__strdup(rebase_opts->rewrite_notes_ref);
|
|
275
|
-
|
|
275
|
+
GIT_ERROR_CHECK_ALLOC(rebase->options.rewrite_notes_ref);
|
|
276
276
|
}
|
|
277
277
|
|
|
278
278
|
*out = rebase;
|
|
@@ -282,10 +282,10 @@ static int rebase_alloc(git_rebase **out, const git_rebase_options *rebase_opts)
|
|
|
282
282
|
|
|
283
283
|
static int rebase_check_versions(const git_rebase_options *given_opts)
|
|
284
284
|
{
|
|
285
|
-
|
|
285
|
+
GIT_ERROR_CHECK_VERSION(given_opts, GIT_REBASE_OPTIONS_VERSION, "git_rebase_options");
|
|
286
286
|
|
|
287
287
|
if (given_opts)
|
|
288
|
-
|
|
288
|
+
GIT_ERROR_CHECK_VERSION(&given_opts->checkout_options, GIT_CHECKOUT_OPTIONS_VERSION, "git_checkout_options");
|
|
289
289
|
|
|
290
290
|
return 0;
|
|
291
291
|
}
|
|
@@ -298,7 +298,8 @@ int git_rebase_open(
|
|
|
298
298
|
git_rebase *rebase;
|
|
299
299
|
git_buf path = GIT_BUF_INIT, orig_head_name = GIT_BUF_INIT,
|
|
300
300
|
orig_head_id = GIT_BUF_INIT, onto_id = GIT_BUF_INIT;
|
|
301
|
-
|
|
301
|
+
size_t state_path_len;
|
|
302
|
+
int error;
|
|
302
303
|
|
|
303
304
|
assert(repo);
|
|
304
305
|
|
|
@@ -314,7 +315,7 @@ int git_rebase_open(
|
|
|
314
315
|
goto done;
|
|
315
316
|
|
|
316
317
|
if (rebase->type == GIT_REBASE_TYPE_NONE) {
|
|
317
|
-
|
|
318
|
+
git_error_set(GIT_ERROR_REBASE, "there is no rebase in progress");
|
|
318
319
|
error = GIT_ENOTFOUND;
|
|
319
320
|
goto done;
|
|
320
321
|
}
|
|
@@ -370,14 +371,14 @@ int git_rebase_open(
|
|
|
370
371
|
|
|
371
372
|
switch (rebase->type) {
|
|
372
373
|
case GIT_REBASE_TYPE_INTERACTIVE:
|
|
373
|
-
|
|
374
|
+
git_error_set(GIT_ERROR_REBASE, "interactive rebase is not supported");
|
|
374
375
|
error = -1;
|
|
375
376
|
break;
|
|
376
377
|
case GIT_REBASE_TYPE_MERGE:
|
|
377
378
|
error = rebase_open_merge(rebase);
|
|
378
379
|
break;
|
|
379
380
|
case GIT_REBASE_TYPE_APPLY:
|
|
380
|
-
|
|
381
|
+
git_error_set(GIT_ERROR_REBASE, "patch application rebase is not supported");
|
|
381
382
|
error = -1;
|
|
382
383
|
break;
|
|
383
384
|
default:
|
|
@@ -476,7 +477,7 @@ static int rebase_setupfiles(git_rebase *rebase)
|
|
|
476
477
|
git_oid_fmt(orig_head, &rebase->orig_head_id);
|
|
477
478
|
|
|
478
479
|
if (p_mkdir(rebase->state_path, REBASE_DIR_MODE) < 0) {
|
|
479
|
-
|
|
480
|
+
git_error_set(GIT_ERROR_OS, "failed to create rebase directory '%s'", rebase->state_path);
|
|
480
481
|
return -1;
|
|
481
482
|
}
|
|
482
483
|
|
|
@@ -493,13 +494,18 @@ static int rebase_setupfiles(git_rebase *rebase)
|
|
|
493
494
|
return rebase_setupfiles_merge(rebase);
|
|
494
495
|
}
|
|
495
496
|
|
|
496
|
-
int
|
|
497
|
+
int git_rebase_options_init(git_rebase_options *opts, unsigned int version)
|
|
497
498
|
{
|
|
498
499
|
GIT_INIT_STRUCTURE_FROM_TEMPLATE(
|
|
499
500
|
opts, version, git_rebase_options, GIT_REBASE_OPTIONS_INIT);
|
|
500
501
|
return 0;
|
|
501
502
|
}
|
|
502
503
|
|
|
504
|
+
int git_rebase_init_options(git_rebase_options *opts, unsigned int version)
|
|
505
|
+
{
|
|
506
|
+
return git_rebase_options_init(opts, version);
|
|
507
|
+
}
|
|
508
|
+
|
|
503
509
|
static int rebase_ensure_not_in_progress(git_repository *repo)
|
|
504
510
|
{
|
|
505
511
|
int error;
|
|
@@ -509,7 +515,7 @@ static int rebase_ensure_not_in_progress(git_repository *repo)
|
|
|
509
515
|
return error;
|
|
510
516
|
|
|
511
517
|
if (type != GIT_REBASE_TYPE_NONE) {
|
|
512
|
-
|
|
518
|
+
git_error_set(GIT_ERROR_REBASE, "there is an existing rebase in progress");
|
|
513
519
|
return -1;
|
|
514
520
|
}
|
|
515
521
|
|
|
@@ -534,7 +540,7 @@ static int rebase_ensure_not_dirty(
|
|
|
534
540
|
goto done;
|
|
535
541
|
|
|
536
542
|
if (git_diff_num_deltas(diff) > 0) {
|
|
537
|
-
|
|
543
|
+
git_error_set(GIT_ERROR_REBASE, "uncommitted changes exist in index");
|
|
538
544
|
error = fail_with;
|
|
539
545
|
goto done;
|
|
540
546
|
}
|
|
@@ -550,7 +556,7 @@ static int rebase_ensure_not_dirty(
|
|
|
550
556
|
goto done;
|
|
551
557
|
|
|
552
558
|
if (git_diff_num_deltas(diff) > 0) {
|
|
553
|
-
|
|
559
|
+
git_error_set(GIT_ERROR_REBASE, "unstaged changes exist in workdir");
|
|
554
560
|
error = fail_with;
|
|
555
561
|
goto done;
|
|
556
562
|
}
|
|
@@ -599,7 +605,7 @@ static int rebase_init_operations(
|
|
|
599
605
|
continue;
|
|
600
606
|
|
|
601
607
|
operation = rebase_operation_alloc(rebase, GIT_REBASE_OPERATION_PICK, &id, NULL);
|
|
602
|
-
|
|
608
|
+
GIT_ERROR_CHECK_ALLOC(operation);
|
|
603
609
|
}
|
|
604
610
|
|
|
605
611
|
error = 0;
|
|
@@ -628,17 +634,17 @@ static int rebase_init_merge(
|
|
|
628
634
|
goto done;
|
|
629
635
|
|
|
630
636
|
rebase->state_path = git_buf_detach(&state_path);
|
|
631
|
-
|
|
637
|
+
GIT_ERROR_CHECK_ALLOC(rebase->state_path);
|
|
632
638
|
|
|
633
639
|
if (branch->ref_name && strcmp(branch->ref_name, "HEAD")) {
|
|
634
640
|
rebase->orig_head_name = git__strdup(branch->ref_name);
|
|
635
|
-
|
|
641
|
+
GIT_ERROR_CHECK_ALLOC(rebase->orig_head_name);
|
|
636
642
|
} else {
|
|
637
643
|
rebase->head_detached = 1;
|
|
638
644
|
}
|
|
639
645
|
|
|
640
646
|
rebase->onto_name = git__strdup(rebase_onto_name(onto));
|
|
641
|
-
|
|
647
|
+
GIT_ERROR_CHECK_ALLOC(rebase->onto_name);
|
|
642
648
|
|
|
643
649
|
rebase->quiet = rebase->options.quiet;
|
|
644
650
|
|
|
@@ -807,7 +813,7 @@ static int rebase_next_merge(
|
|
|
807
813
|
goto done;
|
|
808
814
|
|
|
809
815
|
if ((parent_count = git_commit_parentcount(current_commit)) > 1) {
|
|
810
|
-
|
|
816
|
+
git_error_set(GIT_ERROR_REBASE, "cannot rebase a merge commit");
|
|
811
817
|
error = -1;
|
|
812
818
|
goto done;
|
|
813
819
|
} else if (parent_count) {
|
|
@@ -864,7 +870,7 @@ static int rebase_next_inmemory(
|
|
|
864
870
|
goto done;
|
|
865
871
|
|
|
866
872
|
if ((parent_count = git_commit_parentcount(current_commit)) > 1) {
|
|
867
|
-
|
|
873
|
+
git_error_set(GIT_ERROR_REBASE, "cannot rebase a merge commit");
|
|
868
874
|
error = -1;
|
|
869
875
|
goto done;
|
|
870
876
|
} else if (parent_count) {
|
|
@@ -945,12 +951,16 @@ static int rebase_commit__create(
|
|
|
945
951
|
git_commit *current_commit = NULL, *commit = NULL;
|
|
946
952
|
git_tree *parent_tree = NULL, *tree = NULL;
|
|
947
953
|
git_oid tree_id, commit_id;
|
|
954
|
+
git_buf commit_content = GIT_BUF_INIT, commit_signature = GIT_BUF_INIT,
|
|
955
|
+
signature_field = GIT_BUF_INIT;
|
|
956
|
+
const char *signature_field_string = NULL,
|
|
957
|
+
*commit_signature_string = NULL;
|
|
948
958
|
int error;
|
|
949
959
|
|
|
950
960
|
operation = git_array_get(rebase->operations, rebase->current);
|
|
951
961
|
|
|
952
962
|
if (git_index_has_conflicts(index)) {
|
|
953
|
-
|
|
963
|
+
git_error_set(GIT_ERROR_REBASE, "conflicts have not been resolved");
|
|
954
964
|
error = GIT_EUNMERGED;
|
|
955
965
|
goto done;
|
|
956
966
|
}
|
|
@@ -962,7 +972,7 @@ static int rebase_commit__create(
|
|
|
962
972
|
goto done;
|
|
963
973
|
|
|
964
974
|
if (git_oid_equal(&tree_id, git_tree_id(parent_tree))) {
|
|
965
|
-
|
|
975
|
+
git_error_set(GIT_ERROR_REBASE, "this patch has already been applied");
|
|
966
976
|
error = GIT_EAPPLIED;
|
|
967
977
|
goto done;
|
|
968
978
|
}
|
|
@@ -975,10 +985,40 @@ static int rebase_commit__create(
|
|
|
975
985
|
message = git_commit_message(current_commit);
|
|
976
986
|
}
|
|
977
987
|
|
|
978
|
-
if ((error =
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
988
|
+
if ((error = git_commit_create_buffer(&commit_content, rebase->repo, author, committer,
|
|
989
|
+
message_encoding, message, tree, 1, (const git_commit **)&parent_commit)) < 0)
|
|
990
|
+
goto done;
|
|
991
|
+
|
|
992
|
+
if (rebase->options.signing_cb) {
|
|
993
|
+
git_error_clear();
|
|
994
|
+
error = git_error_set_after_callback_function(rebase->options.signing_cb(
|
|
995
|
+
&commit_signature, &signature_field, git_buf_cstr(&commit_content),
|
|
996
|
+
rebase->options.payload), "commit signing_cb failed");
|
|
997
|
+
if (error == GIT_PASSTHROUGH) {
|
|
998
|
+
git_buf_dispose(&commit_signature);
|
|
999
|
+
git_buf_dispose(&signature_field);
|
|
1000
|
+
git_error_clear();
|
|
1001
|
+
error = GIT_OK;
|
|
1002
|
+
} else if (error < 0)
|
|
1003
|
+
goto done;
|
|
1004
|
+
}
|
|
1005
|
+
|
|
1006
|
+
if (git_buf_is_allocated(&commit_signature)) {
|
|
1007
|
+
assert(git_buf_contains_nul(&commit_signature));
|
|
1008
|
+
commit_signature_string = git_buf_cstr(&commit_signature);
|
|
1009
|
+
}
|
|
1010
|
+
|
|
1011
|
+
if (git_buf_is_allocated(&signature_field)) {
|
|
1012
|
+
assert(git_buf_contains_nul(&signature_field));
|
|
1013
|
+
signature_field_string = git_buf_cstr(&signature_field);
|
|
1014
|
+
}
|
|
1015
|
+
|
|
1016
|
+
if ((error = git_commit_create_with_signature(&commit_id, rebase->repo,
|
|
1017
|
+
git_buf_cstr(&commit_content), commit_signature_string,
|
|
1018
|
+
signature_field_string)))
|
|
1019
|
+
goto done;
|
|
1020
|
+
|
|
1021
|
+
if ((error = git_commit_lookup(&commit, rebase->repo, &commit_id)) < 0)
|
|
982
1022
|
goto done;
|
|
983
1023
|
|
|
984
1024
|
*out = commit;
|
|
@@ -987,6 +1027,9 @@ done:
|
|
|
987
1027
|
if (error < 0)
|
|
988
1028
|
git_commit_free(commit);
|
|
989
1029
|
|
|
1030
|
+
git_buf_dispose(&commit_signature);
|
|
1031
|
+
git_buf_dispose(&signature_field);
|
|
1032
|
+
git_buf_dispose(&commit_content);
|
|
990
1033
|
git_commit_free(current_commit);
|
|
991
1034
|
git_tree_free(parent_tree);
|
|
992
1035
|
git_tree_free(tree);
|
|
@@ -1014,7 +1057,7 @@ static int rebase_commit_merge(
|
|
|
1014
1057
|
|
|
1015
1058
|
if ((error = rebase_ensure_not_dirty(rebase->repo, false, true, GIT_EUNMERGED)) < 0 ||
|
|
1016
1059
|
(error = git_repository_head(&head, rebase->repo)) < 0 ||
|
|
1017
|
-
(error = git_reference_peel((git_object **)&head_commit, head,
|
|
1060
|
+
(error = git_reference_peel((git_object **)&head_commit, head, GIT_OBJECT_COMMIT)) < 0 ||
|
|
1018
1061
|
(error = git_repository_index(&index, rebase->repo)) < 0 ||
|
|
1019
1062
|
(error = rebase_commit__create(&commit, rebase, index, head_commit,
|
|
1020
1063
|
author, committer, message_encoding, message)) < 0 ||
|
|
@@ -1148,7 +1191,7 @@ static int notes_ref_lookup(git_buf *out, git_rebase *rebase)
|
|
|
1148
1191
|
if (error != GIT_ENOTFOUND)
|
|
1149
1192
|
goto done;
|
|
1150
1193
|
|
|
1151
|
-
|
|
1194
|
+
git_error_clear();
|
|
1152
1195
|
do_rewrite = 1;
|
|
1153
1196
|
}
|
|
1154
1197
|
|
|
@@ -1175,7 +1218,7 @@ static int rebase_copy_note(
|
|
|
1175
1218
|
|
|
1176
1219
|
if ((error = git_note_read(¬e, rebase->repo, notes_ref, from)) < 0) {
|
|
1177
1220
|
if (error == GIT_ENOTFOUND) {
|
|
1178
|
-
|
|
1221
|
+
git_error_clear();
|
|
1179
1222
|
error = 0;
|
|
1180
1223
|
}
|
|
1181
1224
|
|
|
@@ -1188,7 +1231,7 @@ static int rebase_copy_note(
|
|
|
1188
1231
|
(error = git_signature_now(&who, "unknown", "unknown")) < 0)
|
|
1189
1232
|
goto done;
|
|
1190
1233
|
|
|
1191
|
-
|
|
1234
|
+
git_error_clear();
|
|
1192
1235
|
}
|
|
1193
1236
|
|
|
1194
1237
|
committer = who;
|
|
@@ -1216,7 +1259,7 @@ static int rebase_copy_notes(
|
|
|
1216
1259
|
|
|
1217
1260
|
if ((error = notes_ref_lookup(¬es_ref, rebase)) < 0) {
|
|
1218
1261
|
if (error == GIT_ENOTFOUND) {
|
|
1219
|
-
|
|
1262
|
+
git_error_clear();
|
|
1220
1263
|
error = 0;
|
|
1221
1264
|
}
|
|
1222
1265
|
|
|
@@ -1259,7 +1302,7 @@ static int rebase_copy_notes(
|
|
|
1259
1302
|
goto done;
|
|
1260
1303
|
|
|
1261
1304
|
on_error:
|
|
1262
|
-
|
|
1305
|
+
git_error_set(GIT_ERROR_REBASE, "invalid rewritten file at line %d", linenum);
|
|
1263
1306
|
error = -1;
|
|
1264
1307
|
|
|
1265
1308
|
done:
|
|
@@ -1288,7 +1331,7 @@ static int return_to_orig_head(git_rebase *rebase)
|
|
|
1288
1331
|
rebase->orig_head_name)) == 0 &&
|
|
1289
1332
|
(error = git_repository_head(&terminal_ref, rebase->repo)) == 0 &&
|
|
1290
1333
|
(error = git_reference_peel((git_object **)&terminal_commit,
|
|
1291
|
-
terminal_ref,
|
|
1334
|
+
terminal_ref, GIT_OBJECT_COMMIT)) == 0 &&
|
|
1292
1335
|
(error = git_reference_create_matching(&branch_ref,
|
|
1293
1336
|
rebase->repo, rebase->orig_head_name,
|
|
1294
1337
|
git_commit_id(terminal_commit), 1,
|
|
@@ -1327,6 +1370,22 @@ int git_rebase_finish(
|
|
|
1327
1370
|
return error;
|
|
1328
1371
|
}
|
|
1329
1372
|
|
|
1373
|
+
const char *git_rebase_orig_head_name(git_rebase *rebase) {
|
|
1374
|
+
return rebase->orig_head_name;
|
|
1375
|
+
}
|
|
1376
|
+
|
|
1377
|
+
const git_oid *git_rebase_orig_head_id(git_rebase *rebase) {
|
|
1378
|
+
return &rebase->orig_head_id;
|
|
1379
|
+
}
|
|
1380
|
+
|
|
1381
|
+
const char *git_rebase_onto_name(git_rebase *rebase) {
|
|
1382
|
+
return rebase->onto_name;
|
|
1383
|
+
}
|
|
1384
|
+
|
|
1385
|
+
const git_oid *git_rebase_onto_id(git_rebase *rebase) {
|
|
1386
|
+
return &rebase->onto_id;
|
|
1387
|
+
}
|
|
1388
|
+
|
|
1330
1389
|
size_t git_rebase_operation_entrycount(git_rebase *rebase)
|
|
1331
1390
|
{
|
|
1332
1391
|
assert(rebase);
|
data/vendor/libgit2/src/refdb.c
CHANGED
|
@@ -24,7 +24,7 @@ int git_refdb_new(git_refdb **out, git_repository *repo)
|
|
|
24
24
|
assert(out && repo);
|
|
25
25
|
|
|
26
26
|
db = git__calloc(1, sizeof(*db));
|
|
27
|
-
|
|
27
|
+
GIT_ERROR_CHECK_ALLOC(db);
|
|
28
28
|
|
|
29
29
|
db->repo = repo;
|
|
30
30
|
|
|
@@ -66,6 +66,18 @@ static void refdb_free_backend(git_refdb *db)
|
|
|
66
66
|
|
|
67
67
|
int git_refdb_set_backend(git_refdb *db, git_refdb_backend *backend)
|
|
68
68
|
{
|
|
69
|
+
GIT_ERROR_CHECK_VERSION(backend, GIT_REFDB_BACKEND_VERSION, "git_refdb_backend");
|
|
70
|
+
|
|
71
|
+
if (!backend->exists || !backend->lookup || !backend->iterator ||
|
|
72
|
+
!backend->write || !backend->rename || !backend->del ||
|
|
73
|
+
!backend->has_log || !backend->ensure_log || !backend->free ||
|
|
74
|
+
!backend->reflog_read || !backend->reflog_write ||
|
|
75
|
+
!backend->reflog_rename || !backend->reflog_delete ||
|
|
76
|
+
(backend->lock && !backend->unlock)) {
|
|
77
|
+
git_error_set(GIT_ERROR_REFERENCE, "incomplete refdb backend implementation");
|
|
78
|
+
return GIT_EINVALID;
|
|
79
|
+
}
|
|
80
|
+
|
|
69
81
|
refdb_free_backend(db);
|
|
70
82
|
db->backend = backend;
|
|
71
83
|
|
|
@@ -127,7 +139,7 @@ int git_refdb_iterator(git_reference_iterator **out, git_refdb *db, const char *
|
|
|
127
139
|
int error;
|
|
128
140
|
|
|
129
141
|
if (!db->backend || !db->backend->iterator) {
|
|
130
|
-
|
|
142
|
+
git_error_set(GIT_ERROR_REFERENCE, "this backend doesn't support iterators");
|
|
131
143
|
return -1;
|
|
132
144
|
}
|
|
133
145
|
|
|
@@ -245,7 +257,7 @@ int git_refdb_lock(void **payload, git_refdb *db, const char *refname)
|
|
|
245
257
|
assert(payload && db && refname);
|
|
246
258
|
|
|
247
259
|
if (!db->backend->lock) {
|
|
248
|
-
|
|
260
|
+
git_error_set(GIT_ERROR_REFERENCE, "backend does not support locking");
|
|
249
261
|
return -1;
|
|
250
262
|
}
|
|
251
263
|
|