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
|
@@ -9,11 +9,13 @@
|
|
|
9
9
|
|
|
10
10
|
#include "git2/attr.h"
|
|
11
11
|
|
|
12
|
+
#include "common.h"
|
|
12
13
|
#include "diff.h"
|
|
13
14
|
#include "strmap.h"
|
|
14
15
|
#include "map.h"
|
|
15
16
|
#include "buf_text.h"
|
|
16
17
|
#include "config.h"
|
|
18
|
+
#include "regexp.h"
|
|
17
19
|
#include "repository.h"
|
|
18
20
|
|
|
19
21
|
typedef enum {
|
|
@@ -24,7 +26,7 @@ typedef enum {
|
|
|
24
26
|
} git_diff_driver_t;
|
|
25
27
|
|
|
26
28
|
typedef struct {
|
|
27
|
-
|
|
29
|
+
git_regexp re;
|
|
28
30
|
int flags;
|
|
29
31
|
} git_diff_driver_pattern;
|
|
30
32
|
|
|
@@ -38,7 +40,7 @@ struct git_diff_driver {
|
|
|
38
40
|
uint32_t binary_flags;
|
|
39
41
|
uint32_t other_flags;
|
|
40
42
|
git_array_t(git_diff_driver_pattern) fn_patterns;
|
|
41
|
-
|
|
43
|
+
git_regexp word_pattern;
|
|
42
44
|
char name[GIT_FLEX_ARRAY];
|
|
43
45
|
};
|
|
44
46
|
|
|
@@ -63,7 +65,7 @@ git_diff_driver_registry *git_diff_driver_registry_new(void)
|
|
|
63
65
|
if (!reg)
|
|
64
66
|
return NULL;
|
|
65
67
|
|
|
66
|
-
if (
|
|
68
|
+
if (git_strmap_new(®->drivers) < 0) {
|
|
67
69
|
git_diff_driver_registry_free(reg);
|
|
68
70
|
return NULL;
|
|
69
71
|
}
|
|
@@ -112,7 +114,7 @@ static int diff_driver_add_patterns(
|
|
|
112
114
|
if (error < 0)
|
|
113
115
|
break;
|
|
114
116
|
|
|
115
|
-
if ((error =
|
|
117
|
+
if ((error = git_regexp_compile(&pat->re, buf.ptr, regex_flags)) != 0) {
|
|
116
118
|
/*
|
|
117
119
|
* TODO: issue a warning
|
|
118
120
|
*/
|
|
@@ -129,7 +131,7 @@ static int diff_driver_add_patterns(
|
|
|
129
131
|
|
|
130
132
|
static int diff_driver_xfuncname(const git_config_entry *entry, void *payload)
|
|
131
133
|
{
|
|
132
|
-
return diff_driver_add_patterns(payload, entry->value,
|
|
134
|
+
return diff_driver_add_patterns(payload, entry->value, 0);
|
|
133
135
|
}
|
|
134
136
|
|
|
135
137
|
static int diff_driver_funcname(const git_config_entry *entry, void *payload)
|
|
@@ -149,7 +151,7 @@ static git_diff_driver_registry *git_repository_driver_registry(
|
|
|
149
151
|
}
|
|
150
152
|
|
|
151
153
|
if (!repo->diff_drivers)
|
|
152
|
-
|
|
154
|
+
git_error_set(GIT_ERROR_REPOSITORY, "unable to create diff driver registry");
|
|
153
155
|
|
|
154
156
|
return repo->diff_drivers;
|
|
155
157
|
}
|
|
@@ -162,11 +164,11 @@ static int diff_driver_alloc(
|
|
|
162
164
|
namelen = strlen(name),
|
|
163
165
|
alloclen;
|
|
164
166
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
+
GIT_ERROR_CHECK_ALLOC_ADD(&alloclen, driverlen, namelen);
|
|
168
|
+
GIT_ERROR_CHECK_ALLOC_ADD(&alloclen, alloclen, 1);
|
|
167
169
|
|
|
168
170
|
driver = git__calloc(1, alloclen);
|
|
169
|
-
|
|
171
|
+
GIT_ERROR_CHECK_ALLOC(driver);
|
|
170
172
|
|
|
171
173
|
memcpy(driver->name, name, namelen);
|
|
172
174
|
|
|
@@ -183,9 +185,9 @@ static int git_diff_driver_builtin(
|
|
|
183
185
|
git_diff_driver_registry *reg,
|
|
184
186
|
const char *driver_name)
|
|
185
187
|
{
|
|
186
|
-
int error = 0;
|
|
187
188
|
git_diff_driver_definition *ddef = NULL;
|
|
188
189
|
git_diff_driver *drv = NULL;
|
|
190
|
+
int error = 0;
|
|
189
191
|
size_t idx;
|
|
190
192
|
|
|
191
193
|
for (idx = 0; idx < ARRAY_SIZE(builtin_defs); ++idx) {
|
|
@@ -204,20 +206,15 @@ static int git_diff_driver_builtin(
|
|
|
204
206
|
|
|
205
207
|
if (ddef->fns &&
|
|
206
208
|
(error = diff_driver_add_patterns(
|
|
207
|
-
drv, ddef->fns, ddef->flags
|
|
209
|
+
drv, ddef->fns, ddef->flags)) < 0)
|
|
208
210
|
goto done;
|
|
209
211
|
|
|
210
212
|
if (ddef->words &&
|
|
211
|
-
|
|
212
|
-
&drv->word_pattern, ddef->words, ddef->flags | REG_EXTENDED)))
|
|
213
|
-
{
|
|
214
|
-
error = giterr_set_regex(&drv->word_pattern, error);
|
|
213
|
+
(error = git_regexp_compile(&drv->word_pattern, ddef->words, ddef->flags)) < 0)
|
|
215
214
|
goto done;
|
|
216
|
-
}
|
|
217
215
|
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
error = 0;
|
|
216
|
+
if ((error = git_strmap_set(reg->drivers, drv->name, drv)) < 0)
|
|
217
|
+
goto done;
|
|
221
218
|
|
|
222
219
|
done:
|
|
223
220
|
if (error && drv)
|
|
@@ -233,9 +230,8 @@ static int git_diff_driver_load(
|
|
|
233
230
|
{
|
|
234
231
|
int error = 0;
|
|
235
232
|
git_diff_driver_registry *reg;
|
|
236
|
-
git_diff_driver *drv
|
|
233
|
+
git_diff_driver *drv;
|
|
237
234
|
size_t namelen;
|
|
238
|
-
khiter_t pos;
|
|
239
235
|
git_config *cfg = NULL;
|
|
240
236
|
git_buf name = GIT_BUF_INIT;
|
|
241
237
|
git_config_entry *ce = NULL;
|
|
@@ -244,9 +240,8 @@ static int git_diff_driver_load(
|
|
|
244
240
|
if ((reg = git_repository_driver_registry(repo)) == NULL)
|
|
245
241
|
return -1;
|
|
246
242
|
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
*out = git_strmap_value_at(reg->drivers, pos);
|
|
243
|
+
if ((drv = git_strmap_get(reg->drivers, driver_name)) != NULL) {
|
|
244
|
+
*out = drv;
|
|
250
245
|
return 0;
|
|
251
246
|
}
|
|
252
247
|
|
|
@@ -257,7 +252,7 @@ static int git_diff_driver_load(
|
|
|
257
252
|
|
|
258
253
|
/* if you can't read config for repo, just use default driver */
|
|
259
254
|
if (git_repository_config_snapshot(&cfg, repo) < 0) {
|
|
260
|
-
|
|
255
|
+
git_error_clear();
|
|
261
256
|
goto done;
|
|
262
257
|
}
|
|
263
258
|
|
|
@@ -283,21 +278,25 @@ static int git_diff_driver_load(
|
|
|
283
278
|
/* TODO: warn if diff.<name>.command or diff.<name>.textconv are set */
|
|
284
279
|
|
|
285
280
|
git_buf_truncate(&name, namelen + strlen("diff.."));
|
|
286
|
-
|
|
281
|
+
if ((error = git_buf_PUTS(&name, "xfuncname")) < 0)
|
|
282
|
+
goto done;
|
|
283
|
+
|
|
287
284
|
if ((error = git_config_get_multivar_foreach(
|
|
288
285
|
cfg, name.ptr, NULL, diff_driver_xfuncname, drv)) < 0) {
|
|
289
286
|
if (error != GIT_ENOTFOUND)
|
|
290
287
|
goto done;
|
|
291
|
-
|
|
288
|
+
git_error_clear(); /* no diff.<driver>.xfuncname, so just continue */
|
|
292
289
|
}
|
|
293
290
|
|
|
294
291
|
git_buf_truncate(&name, namelen + strlen("diff.."));
|
|
295
|
-
|
|
292
|
+
if ((error = git_buf_PUTS(&name, "funcname")) < 0)
|
|
293
|
+
goto done;
|
|
294
|
+
|
|
296
295
|
if ((error = git_config_get_multivar_foreach(
|
|
297
296
|
cfg, name.ptr, NULL, diff_driver_funcname, drv)) < 0) {
|
|
298
297
|
if (error != GIT_ENOTFOUND)
|
|
299
298
|
goto done;
|
|
300
|
-
|
|
299
|
+
git_error_clear(); /* no diff.<driver>.funcname, so just continue */
|
|
301
300
|
}
|
|
302
301
|
|
|
303
302
|
/* if we found any patterns, set driver type to use correct callback */
|
|
@@ -307,16 +306,17 @@ static int git_diff_driver_load(
|
|
|
307
306
|
}
|
|
308
307
|
|
|
309
308
|
git_buf_truncate(&name, namelen + strlen("diff.."));
|
|
310
|
-
|
|
309
|
+
if ((error = git_buf_PUTS(&name, "wordregex")) < 0)
|
|
310
|
+
goto done;
|
|
311
|
+
|
|
311
312
|
if ((error = git_config__lookup_entry(&ce, cfg, name.ptr, false)) < 0)
|
|
312
313
|
goto done;
|
|
313
314
|
if (!ce || !ce->value)
|
|
314
315
|
/* no diff.<driver>.wordregex, so just continue */;
|
|
315
|
-
else if (!(error =
|
|
316
|
+
else if (!(error = git_regexp_compile(&drv->word_pattern, ce->value, 0)))
|
|
316
317
|
found_driver = true;
|
|
317
318
|
else {
|
|
318
319
|
/* TODO: warn about bad regex instead of failure */
|
|
319
|
-
error = giterr_set_regex(&drv->word_pattern, error);
|
|
320
320
|
goto done;
|
|
321
321
|
}
|
|
322
322
|
|
|
@@ -329,10 +329,8 @@ static int git_diff_driver_load(
|
|
|
329
329
|
goto done;
|
|
330
330
|
|
|
331
331
|
/* store driver in registry */
|
|
332
|
-
|
|
333
|
-
if (error < 0)
|
|
332
|
+
if ((error = git_strmap_set(reg->drivers, drv->name, drv)) < 0)
|
|
334
333
|
goto done;
|
|
335
|
-
error = 0;
|
|
336
334
|
|
|
337
335
|
*out = drv;
|
|
338
336
|
|
|
@@ -369,18 +367,18 @@ int git_diff_driver_lookup(
|
|
|
369
367
|
attrsession, 0, path, 1, attrs)) < 0)
|
|
370
368
|
/* return error below */;
|
|
371
369
|
|
|
372
|
-
else if (
|
|
370
|
+
else if (GIT_ATTR_IS_UNSPECIFIED(values[0]))
|
|
373
371
|
/* just use the auto value */;
|
|
374
|
-
else if (
|
|
372
|
+
else if (GIT_ATTR_IS_FALSE(values[0]))
|
|
375
373
|
*out = &global_drivers[DIFF_DRIVER_BINARY];
|
|
376
|
-
else if (
|
|
374
|
+
else if (GIT_ATTR_IS_TRUE(values[0]))
|
|
377
375
|
*out = &global_drivers[DIFF_DRIVER_TEXT];
|
|
378
376
|
|
|
379
377
|
/* otherwise look for driver information in config and build driver */
|
|
380
378
|
else if ((error = git_diff_driver_load(out, repo, values[0])) < 0) {
|
|
381
379
|
if (error == GIT_ENOTFOUND) {
|
|
382
380
|
error = 0;
|
|
383
|
-
|
|
381
|
+
git_error_clear();
|
|
384
382
|
}
|
|
385
383
|
}
|
|
386
384
|
|
|
@@ -398,10 +396,10 @@ void git_diff_driver_free(git_diff_driver *driver)
|
|
|
398
396
|
return;
|
|
399
397
|
|
|
400
398
|
for (i = 0; i < git_array_size(driver->fn_patterns); ++i)
|
|
401
|
-
|
|
399
|
+
git_regexp_dispose(& git_array_get(driver->fn_patterns, i)->re);
|
|
402
400
|
git_array_clear(driver->fn_patterns);
|
|
403
401
|
|
|
404
|
-
|
|
402
|
+
git_regexp_dispose(&driver->word_pattern);
|
|
405
403
|
|
|
406
404
|
git__free(driver);
|
|
407
405
|
}
|
|
@@ -449,19 +447,19 @@ static int diff_context_line__pattern_match(
|
|
|
449
447
|
git_diff_driver *driver, git_buf *line)
|
|
450
448
|
{
|
|
451
449
|
size_t i, maxi = git_array_size(driver->fn_patterns);
|
|
452
|
-
|
|
450
|
+
git_regmatch pmatch[2];
|
|
453
451
|
|
|
454
452
|
for (i = 0; i < maxi; ++i) {
|
|
455
453
|
git_diff_driver_pattern *pat = git_array_get(driver->fn_patterns, i);
|
|
456
454
|
|
|
457
|
-
if (!
|
|
455
|
+
if (!git_regexp_search(&pat->re, line->ptr, 2, pmatch)) {
|
|
458
456
|
if (pat->flags & REG_NEGATE)
|
|
459
457
|
return false;
|
|
460
458
|
|
|
461
459
|
/* use pmatch data to trim line data */
|
|
462
|
-
i = (pmatch[1].
|
|
463
|
-
git_buf_consume(line, git_buf_cstr(line) + pmatch[i].
|
|
464
|
-
git_buf_truncate(line, pmatch[i].
|
|
460
|
+
i = (pmatch[1].start >= 0) ? 1 : 0;
|
|
461
|
+
git_buf_consume(line, git_buf_cstr(line) + pmatch[i].start);
|
|
462
|
+
git_buf_truncate(line, pmatch[i].end - pmatch[i].start);
|
|
465
463
|
git_buf_rtrim(line);
|
|
466
464
|
|
|
467
465
|
return true;
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
#include "diff.h"
|
|
13
13
|
#include "diff_generate.h"
|
|
14
14
|
#include "odb.h"
|
|
15
|
-
#include "
|
|
15
|
+
#include "futils.h"
|
|
16
16
|
#include "filter.h"
|
|
17
17
|
|
|
18
18
|
#define DIFF_MAX_FILESIZE 0x20000000
|
|
@@ -62,7 +62,7 @@ static int diff_file_content_init_common(
|
|
|
62
62
|
git_diff_driver_update_options(&fc->opts_flags, fc->driver);
|
|
63
63
|
|
|
64
64
|
/* make sure file is conceivable mmap-able */
|
|
65
|
-
if ((
|
|
65
|
+
if ((size_t)fc->file->size != fc->file->size)
|
|
66
66
|
fc->file->flags |= GIT_DIFF_FLAG_BINARY;
|
|
67
67
|
/* check if user is forcing text diff the file */
|
|
68
68
|
else if (fc->opts_flags & GIT_DIFF_FORCE_TEXT) {
|
|
@@ -161,7 +161,7 @@ int git_diff_file_content__init_from_src(
|
|
|
161
161
|
fc->flags |= GIT_DIFF_FLAG__FREE_BLOB;
|
|
162
162
|
} else {
|
|
163
163
|
fc->file->size = src->buflen;
|
|
164
|
-
git_odb_hash(&fc->file->id, src->buf, src->buflen,
|
|
164
|
+
git_odb_hash(&fc->file->id, src->buf, src->buflen, GIT_OBJECT_BLOB);
|
|
165
165
|
fc->file->id_abbrev = GIT_OID_HEXSZ;
|
|
166
166
|
|
|
167
167
|
fc->map.len = src->buflen;
|
|
@@ -188,7 +188,7 @@ static int diff_file_content_commit_to_str(
|
|
|
188
188
|
if ((error = git_submodule_lookup(&sm, fc->repo, fc->file->path)) < 0) {
|
|
189
189
|
/* GIT_EEXISTS means a "submodule" that has not been git added */
|
|
190
190
|
if (error == GIT_EEXISTS) {
|
|
191
|
-
|
|
191
|
+
git_error_clear();
|
|
192
192
|
error = 0;
|
|
193
193
|
}
|
|
194
194
|
return error;
|
|
@@ -232,7 +232,7 @@ static int diff_file_content_load_blob(
|
|
|
232
232
|
int error = 0;
|
|
233
233
|
git_odb_object *odb_obj = NULL;
|
|
234
234
|
|
|
235
|
-
if (
|
|
235
|
+
if (git_oid_is_zero(&fc->file->id))
|
|
236
236
|
return 0;
|
|
237
237
|
|
|
238
238
|
if (fc->file->mode == GIT_FILEMODE_COMMIT)
|
|
@@ -251,7 +251,7 @@ static int diff_file_content_load_blob(
|
|
|
251
251
|
|
|
252
252
|
if (odb_obj != NULL) {
|
|
253
253
|
error = git_object__from_odb_object(
|
|
254
|
-
(git_object **)&fc->blob, fc->repo, odb_obj,
|
|
254
|
+
(git_object **)&fc->blob, fc->repo, odb_obj, GIT_OBJECT_BLOB);
|
|
255
255
|
git_odb_object_free(odb_obj);
|
|
256
256
|
} else {
|
|
257
257
|
error = git_blob_lookup(
|
|
@@ -290,8 +290,8 @@ static int diff_file_content_load_workdir_symlink(
|
|
|
290
290
|
ssize_t alloc_len, read_len;
|
|
291
291
|
int symlink_supported, error;
|
|
292
292
|
|
|
293
|
-
if ((error =
|
|
294
|
-
&symlink_supported, fc->repo,
|
|
293
|
+
if ((error = git_repository__configmap_lookup(
|
|
294
|
+
&symlink_supported, fc->repo, GIT_CONFIGMAP_SYMLINKS)) < 0)
|
|
295
295
|
return -1;
|
|
296
296
|
|
|
297
297
|
if (!symlink_supported)
|
|
@@ -303,13 +303,13 @@ static int diff_file_content_load_workdir_symlink(
|
|
|
303
303
|
alloc_len = (ssize_t)(fc->file->size * 2) + 1;
|
|
304
304
|
|
|
305
305
|
fc->map.data = git__calloc(alloc_len, sizeof(char));
|
|
306
|
-
|
|
306
|
+
GIT_ERROR_CHECK_ALLOC(fc->map.data);
|
|
307
307
|
|
|
308
308
|
fc->flags |= GIT_DIFF_FLAG__FREE_DATA;
|
|
309
309
|
|
|
310
310
|
read_len = p_readlink(git_buf_cstr(path), fc->map.data, alloc_len);
|
|
311
311
|
if (read_len < 0) {
|
|
312
|
-
|
|
312
|
+
git_error_set(GIT_ERROR_OS, "failed to read symlink '%s'", fc->file->path);
|
|
313
313
|
return -1;
|
|
314
314
|
}
|
|
315
315
|
|
|
@@ -330,8 +330,10 @@ static int diff_file_content_load_workdir_file(
|
|
|
330
330
|
if (fd < 0)
|
|
331
331
|
return fd;
|
|
332
332
|
|
|
333
|
-
if (!fc->file->size
|
|
334
|
-
|
|
333
|
+
if (!fc->file->size)
|
|
334
|
+
error = git_futils_filesize(&fc->file->size, fd);
|
|
335
|
+
|
|
336
|
+
if (error < 0 || !fc->file->size)
|
|
335
337
|
goto cleanup;
|
|
336
338
|
|
|
337
339
|
if ((diff_opts->flags & GIT_DIFF_SHOW_BINARY) == 0 &&
|
|
@@ -352,7 +354,7 @@ static int diff_file_content_load_workdir_file(
|
|
|
352
354
|
}
|
|
353
355
|
|
|
354
356
|
/* if mmap failed, fall through to try readbuffer below */
|
|
355
|
-
|
|
357
|
+
git_error_clear();
|
|
356
358
|
}
|
|
357
359
|
|
|
358
360
|
if (!(error = git_futils_readbuffer_fd(&raw, fd, (size_t)fc->file->size))) {
|
|
@@ -402,7 +404,7 @@ static int diff_file_content_load_workdir(
|
|
|
402
404
|
/* once data is loaded, update OID if we didn't have it previously */
|
|
403
405
|
if (!error && (fc->file->flags & GIT_DIFF_FLAG_VALID_ID) == 0) {
|
|
404
406
|
error = git_odb_hash(
|
|
405
|
-
&fc->file->id, fc->map.data, fc->map.len,
|
|
407
|
+
&fc->file->id, fc->map.data, fc->map.len, GIT_OBJECT_BLOB);
|
|
406
408
|
fc->file->flags |= GIT_DIFF_FLAG_VALID_ID;
|
|
407
409
|
}
|
|
408
410
|
|