rugged 1.3.2.3 → 1.4.2

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.
Files changed (329) hide show
  1. checksums.yaml +4 -4
  2. data/ext/rugged/extconf.rb +1 -1
  3. data/ext/rugged/rugged_config.c +7 -2
  4. data/ext/rugged/rugged_remote.c +17 -0
  5. data/lib/rugged/version.rb +1 -1
  6. data/vendor/libgit2/CMakeLists.txt +103 -276
  7. data/vendor/libgit2/COPYING +36 -19
  8. data/vendor/libgit2/cmake/AddCFlagIfSupported.cmake +21 -21
  9. data/vendor/libgit2/cmake/DefaultCFlags.cmake +154 -0
  10. data/vendor/libgit2/cmake/EnableWarnings.cmake +13 -13
  11. data/vendor/libgit2/cmake/FindCoreFoundation.cmake +13 -13
  12. data/vendor/libgit2/cmake/FindGSSAPI.cmake +171 -287
  13. data/vendor/libgit2/cmake/FindGSSFramework.cmake +13 -13
  14. data/vendor/libgit2/cmake/{FindHTTP_Parser.cmake → FindHTTPParser.cmake} +17 -17
  15. data/vendor/libgit2/cmake/FindIconv.cmake +27 -27
  16. data/vendor/libgit2/cmake/FindLibSSH2.cmake +5 -5
  17. data/vendor/libgit2/cmake/FindPCRE.cmake +13 -13
  18. data/vendor/libgit2/cmake/FindPCRE2.cmake +12 -12
  19. data/vendor/libgit2/cmake/FindPkgLibraries.cmake +19 -19
  20. data/vendor/libgit2/cmake/FindSecurity.cmake +14 -14
  21. data/vendor/libgit2/cmake/FindStatNsec.cmake +12 -18
  22. data/vendor/libgit2/cmake/Findfutimens.cmake +8 -8
  23. data/vendor/libgit2/cmake/FindmbedTLS.cmake +63 -70
  24. data/vendor/libgit2/cmake/IdeSplitSources.cmake +18 -18
  25. data/vendor/libgit2/cmake/PkgBuildConfig.cmake +60 -60
  26. data/vendor/libgit2/cmake/SanitizeBool.cmake +20 -20
  27. data/vendor/libgit2/cmake/SelectGSSAPI.cmake +37 -37
  28. data/vendor/libgit2/cmake/SelectHTTPParser.cmake +19 -0
  29. data/vendor/libgit2/cmake/SelectHTTPSBackend.cmake +100 -100
  30. data/vendor/libgit2/cmake/SelectHashes.cmake +39 -49
  31. data/vendor/libgit2/cmake/SelectRegex.cmake +51 -0
  32. data/vendor/libgit2/cmake/SelectSSH.cmake +41 -0
  33. data/vendor/libgit2/cmake/SelectWinHTTP.cmake +17 -0
  34. data/vendor/libgit2/cmake/SelectZlib.cmake +34 -0
  35. data/vendor/libgit2/deps/chromium-zlib/CMakeLists.txt +6 -6
  36. data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +31 -31
  37. data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +1 -1
  38. data/vendor/libgit2/deps/ntlmclient/ntlm.c +4 -4
  39. data/vendor/libgit2/deps/ntlmclient/ntlm.h +4 -4
  40. data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +2 -2
  41. data/vendor/libgit2/deps/pcre/CMakeLists.txt +88 -88
  42. data/vendor/libgit2/deps/winhttp/CMakeLists.txt +14 -16
  43. data/vendor/libgit2/deps/zlib/adler32.c +0 -7
  44. data/vendor/libgit2/deps/zlib/crc32.c +288 -975
  45. data/vendor/libgit2/deps/zlib/crc32.h +436 -9441
  46. data/vendor/libgit2/deps/zlib/deflate.c +31 -83
  47. data/vendor/libgit2/deps/zlib/deflate.h +15 -12
  48. data/vendor/libgit2/deps/zlib/gzguts.h +2 -3
  49. data/vendor/libgit2/deps/zlib/infback.c +1 -2
  50. data/vendor/libgit2/deps/zlib/inffast.c +14 -14
  51. data/vendor/libgit2/deps/zlib/inflate.c +8 -39
  52. data/vendor/libgit2/deps/zlib/inflate.h +2 -3
  53. data/vendor/libgit2/deps/zlib/inftrees.c +3 -3
  54. data/vendor/libgit2/deps/zlib/trees.c +48 -27
  55. data/vendor/libgit2/deps/zlib/zlib.h +100 -126
  56. data/vendor/libgit2/deps/zlib/zutil.c +2 -2
  57. data/vendor/libgit2/deps/zlib/zutil.h +9 -12
  58. data/vendor/libgit2/include/git2/apply.h +16 -2
  59. data/vendor/libgit2/include/git2/attr.h +11 -2
  60. data/vendor/libgit2/include/git2/blame.h +4 -1
  61. data/vendor/libgit2/include/git2/blob.h +14 -1
  62. data/vendor/libgit2/include/git2/branch.h +2 -0
  63. data/vendor/libgit2/include/git2/buffer.h +18 -78
  64. data/vendor/libgit2/include/git2/cert.h +2 -2
  65. data/vendor/libgit2/include/git2/checkout.h +5 -2
  66. data/vendor/libgit2/include/git2/clone.h +3 -3
  67. data/vendor/libgit2/include/git2/commit.h +2 -0
  68. data/vendor/libgit2/include/git2/common.h +5 -12
  69. data/vendor/libgit2/include/git2/config.h +19 -3
  70. data/vendor/libgit2/include/git2/credential.h +2 -1
  71. data/vendor/libgit2/include/git2/credential_helpers.h +1 -0
  72. data/vendor/libgit2/include/git2/deprecated.h +1 -1
  73. data/vendor/libgit2/include/git2/describe.h +7 -2
  74. data/vendor/libgit2/include/git2/diff.h +17 -9
  75. data/vendor/libgit2/include/git2/email.h +1 -1
  76. data/vendor/libgit2/include/git2/errors.h +1 -2
  77. data/vendor/libgit2/include/git2/filter.h +7 -2
  78. data/vendor/libgit2/include/git2/graph.h +1 -0
  79. data/vendor/libgit2/include/git2/ignore.h +1 -1
  80. data/vendor/libgit2/include/git2/index.h +11 -5
  81. data/vendor/libgit2/include/git2/indexer.h +19 -0
  82. data/vendor/libgit2/include/git2/merge.h +23 -3
  83. data/vendor/libgit2/include/git2/message.h +2 -0
  84. data/vendor/libgit2/include/git2/object.h +23 -0
  85. data/vendor/libgit2/include/git2/odb.h +37 -7
  86. data/vendor/libgit2/include/git2/odb_backend.h +1 -1
  87. data/vendor/libgit2/include/git2/pack.h +24 -8
  88. data/vendor/libgit2/include/git2/patch.h +8 -0
  89. data/vendor/libgit2/include/git2/pathspec.h +1 -1
  90. data/vendor/libgit2/include/git2/proxy.h +1 -1
  91. data/vendor/libgit2/include/git2/rebase.h +9 -1
  92. data/vendor/libgit2/include/git2/refdb.h +3 -0
  93. data/vendor/libgit2/include/git2/reflog.h +1 -1
  94. data/vendor/libgit2/include/git2/refs.h +2 -2
  95. data/vendor/libgit2/include/git2/remote.h +184 -37
  96. data/vendor/libgit2/include/git2/repository.h +14 -9
  97. data/vendor/libgit2/include/git2/reset.h +2 -2
  98. data/vendor/libgit2/include/git2/revparse.h +1 -1
  99. data/vendor/libgit2/include/git2/revwalk.h +4 -1
  100. data/vendor/libgit2/include/git2/signature.h +1 -1
  101. data/vendor/libgit2/include/git2/stash.h +3 -3
  102. data/vendor/libgit2/include/git2/status.h +9 -3
  103. data/vendor/libgit2/include/git2/submodule.h +7 -2
  104. data/vendor/libgit2/include/git2/sys/commit_graph.h +1 -1
  105. data/vendor/libgit2/include/git2/sys/odb_backend.h +2 -5
  106. data/vendor/libgit2/include/git2/sys/remote.h +31 -0
  107. data/vendor/libgit2/include/git2/sys/stream.h +1 -1
  108. data/vendor/libgit2/include/git2/sys/transport.h +25 -34
  109. data/vendor/libgit2/include/git2/tag.h +1 -0
  110. data/vendor/libgit2/include/git2/tree.h +4 -3
  111. data/vendor/libgit2/include/git2/types.h +7 -7
  112. data/vendor/libgit2/include/git2/version.h +3 -3
  113. data/vendor/libgit2/include/git2/worktree.h +12 -2
  114. data/vendor/libgit2/src/CMakeLists.txt +189 -315
  115. data/vendor/libgit2/src/annotated_commit.h +1 -1
  116. data/vendor/libgit2/src/apply.c +18 -18
  117. data/vendor/libgit2/src/apply.h +2 -2
  118. data/vendor/libgit2/src/attr.c +18 -18
  119. data/vendor/libgit2/src/attr_file.c +17 -17
  120. data/vendor/libgit2/src/attr_file.h +4 -4
  121. data/vendor/libgit2/src/attrcache.c +17 -12
  122. data/vendor/libgit2/src/blame_git.c +1 -1
  123. data/vendor/libgit2/src/blob.c +33 -26
  124. data/vendor/libgit2/src/blob.h +1 -1
  125. data/vendor/libgit2/src/branch.c +150 -109
  126. data/vendor/libgit2/src/branch.h +15 -3
  127. data/vendor/libgit2/src/buf.c +126 -0
  128. data/vendor/libgit2/src/buf.h +50 -0
  129. data/vendor/libgit2/src/cc-compat.h +1 -1
  130. data/vendor/libgit2/src/checkout.c +74 -68
  131. data/vendor/libgit2/src/cherrypick.c +10 -10
  132. data/vendor/libgit2/src/clone.c +66 -66
  133. data/vendor/libgit2/src/commit.c +128 -58
  134. data/vendor/libgit2/src/commit.h +24 -1
  135. data/vendor/libgit2/src/commit_graph.c +68 -53
  136. data/vendor/libgit2/src/commit_graph.h +10 -3
  137. data/vendor/libgit2/src/commit_list.c +2 -3
  138. data/vendor/libgit2/src/common.h +10 -3
  139. data/vendor/libgit2/src/config.c +99 -77
  140. data/vendor/libgit2/src/config.h +15 -2
  141. data/vendor/libgit2/src/config_file.c +103 -91
  142. data/vendor/libgit2/src/config_mem.c +9 -9
  143. data/vendor/libgit2/src/config_parse.c +27 -23
  144. data/vendor/libgit2/src/crlf.c +24 -21
  145. data/vendor/libgit2/src/date.c +10 -17
  146. data/vendor/libgit2/src/date.h +33 -0
  147. data/vendor/libgit2/src/describe.c +27 -19
  148. data/vendor/libgit2/src/diff.c +25 -8
  149. data/vendor/libgit2/src/diff.h +2 -4
  150. data/vendor/libgit2/src/diff_driver.c +34 -36
  151. data/vendor/libgit2/src/diff_driver.h +3 -3
  152. data/vendor/libgit2/src/diff_file.c +29 -20
  153. data/vendor/libgit2/src/diff_generate.c +30 -6
  154. data/vendor/libgit2/src/diff_generate.h +5 -3
  155. data/vendor/libgit2/src/diff_print.c +102 -95
  156. data/vendor/libgit2/src/diff_stats.c +40 -29
  157. data/vendor/libgit2/src/{message.h → diff_stats.h} +7 -6
  158. data/vendor/libgit2/src/diff_tform.c +9 -8
  159. data/vendor/libgit2/src/diff_xdiff.c +3 -8
  160. data/vendor/libgit2/src/email.c +54 -38
  161. data/vendor/libgit2/src/email.h +1 -1
  162. data/vendor/libgit2/src/errors.c +18 -18
  163. data/vendor/libgit2/src/features.h.in +6 -1
  164. data/vendor/libgit2/src/fetch.c +69 -24
  165. data/vendor/libgit2/src/fetch.h +1 -1
  166. data/vendor/libgit2/src/fetchhead.c +19 -19
  167. data/vendor/libgit2/src/filebuf.c +28 -28
  168. data/vendor/libgit2/src/filebuf.h +1 -1
  169. data/vendor/libgit2/src/filter.c +96 -52
  170. data/vendor/libgit2/src/filter.h +26 -5
  171. data/vendor/libgit2/src/fs_path.c +1912 -0
  172. data/vendor/libgit2/src/fs_path.h +752 -0
  173. data/vendor/libgit2/src/futils.c +91 -85
  174. data/vendor/libgit2/src/futils.h +26 -14
  175. data/vendor/libgit2/src/hash/sha1/collisiondetect.c +2 -2
  176. data/vendor/libgit2/src/hash/sha1/common_crypto.c +2 -2
  177. data/vendor/libgit2/src/hash/sha1/generic.c +2 -2
  178. data/vendor/libgit2/src/hash/sha1/mbedtls.c +2 -2
  179. data/vendor/libgit2/src/hash/sha1/openssl.c +2 -2
  180. data/vendor/libgit2/src/hash/sha1/sha1dc/sha1.c +1 -1
  181. data/vendor/libgit2/src/hash/sha1/win32.c +6 -6
  182. data/vendor/libgit2/src/hash/sha1.h +3 -1
  183. data/vendor/libgit2/src/hash.c +67 -35
  184. data/vendor/libgit2/src/hash.h +12 -12
  185. data/vendor/libgit2/src/ident.c +18 -18
  186. data/vendor/libgit2/src/ignore.c +35 -34
  187. data/vendor/libgit2/src/ignore.h +2 -2
  188. data/vendor/libgit2/src/index.c +79 -80
  189. data/vendor/libgit2/src/index.h +6 -3
  190. data/vendor/libgit2/src/indexer.c +75 -57
  191. data/vendor/libgit2/src/iterator.c +64 -56
  192. data/vendor/libgit2/src/iterator.h +5 -5
  193. data/vendor/libgit2/src/khash.h +1 -1
  194. data/vendor/libgit2/src/libgit2.c +22 -19
  195. data/vendor/libgit2/src/mailmap.c +38 -36
  196. data/vendor/libgit2/src/merge.c +27 -27
  197. data/vendor/libgit2/src/merge.h +1 -14
  198. data/vendor/libgit2/src/merge_driver.c +2 -2
  199. data/vendor/libgit2/src/merge_file.c +13 -3
  200. data/vendor/libgit2/src/message.c +21 -10
  201. data/vendor/libgit2/src/midx.c +83 -66
  202. data/vendor/libgit2/src/midx.h +3 -3
  203. data/vendor/libgit2/src/mwindow.c +1 -1
  204. data/vendor/libgit2/src/net.c +278 -68
  205. data/vendor/libgit2/src/net.h +10 -3
  206. data/vendor/libgit2/src/netops.c +1 -1
  207. data/vendor/libgit2/src/netops.h +1 -1
  208. data/vendor/libgit2/src/notes.c +20 -29
  209. data/vendor/libgit2/src/object.c +49 -9
  210. data/vendor/libgit2/src/object.h +1 -1
  211. data/vendor/libgit2/src/odb.c +35 -32
  212. data/vendor/libgit2/src/odb.h +1 -1
  213. data/vendor/libgit2/src/odb_loose.c +68 -68
  214. data/vendor/libgit2/src/odb_mempack.c +18 -5
  215. data/vendor/libgit2/src/odb_pack.c +43 -43
  216. data/vendor/libgit2/src/oid.c +11 -4
  217. data/vendor/libgit2/src/oid.h +15 -0
  218. data/vendor/libgit2/src/pack-objects.c +41 -26
  219. data/vendor/libgit2/src/pack-objects.h +11 -6
  220. data/vendor/libgit2/src/pack.c +10 -10
  221. data/vendor/libgit2/src/patch.c +3 -3
  222. data/vendor/libgit2/src/patch.h +1 -0
  223. data/vendor/libgit2/src/patch_generate.c +27 -11
  224. data/vendor/libgit2/src/patch_generate.h +5 -5
  225. data/vendor/libgit2/src/patch_parse.c +24 -24
  226. data/vendor/libgit2/src/path.c +76 -1951
  227. data/vendor/libgit2/src/path.h +34 -741
  228. data/vendor/libgit2/src/pathspec.c +6 -6
  229. data/vendor/libgit2/src/pathspec.h +2 -2
  230. data/vendor/libgit2/src/posix.c +3 -3
  231. data/vendor/libgit2/src/posix.h +1 -0
  232. data/vendor/libgit2/src/pqueue.h +1 -1
  233. data/vendor/libgit2/src/proxy.c +4 -1
  234. data/vendor/libgit2/src/proxy.h +1 -1
  235. data/vendor/libgit2/src/push.c +30 -35
  236. data/vendor/libgit2/src/push.h +4 -16
  237. data/vendor/libgit2/src/rand.c +226 -0
  238. data/vendor/libgit2/src/rand.h +37 -0
  239. data/vendor/libgit2/src/reader.c +8 -8
  240. data/vendor/libgit2/src/reader.h +2 -2
  241. data/vendor/libgit2/src/rebase.c +89 -88
  242. data/vendor/libgit2/src/refdb_fs.c +447 -173
  243. data/vendor/libgit2/src/refs.c +32 -32
  244. data/vendor/libgit2/src/refs.h +2 -2
  245. data/vendor/libgit2/src/refspec.c +32 -37
  246. data/vendor/libgit2/src/refspec.h +5 -2
  247. data/vendor/libgit2/src/regexp.c +1 -1
  248. data/vendor/libgit2/src/remote.c +713 -419
  249. data/vendor/libgit2/src/remote.h +15 -10
  250. data/vendor/libgit2/src/repository.c +350 -467
  251. data/vendor/libgit2/src/repository.h +11 -10
  252. data/vendor/libgit2/src/reset.c +8 -5
  253. data/vendor/libgit2/src/revert.c +10 -10
  254. data/vendor/libgit2/src/revparse.c +48 -35
  255. data/vendor/libgit2/src/revwalk.c +7 -7
  256. data/vendor/libgit2/src/signature.c +12 -6
  257. data/vendor/libgit2/src/signature.h +1 -1
  258. data/vendor/libgit2/src/sortedcache.c +1 -1
  259. data/vendor/libgit2/src/sortedcache.h +1 -1
  260. data/vendor/libgit2/src/stash.c +36 -37
  261. data/vendor/libgit2/src/status.c +4 -1
  262. data/vendor/libgit2/src/{buffer.c → str.c} +157 -151
  263. data/vendor/libgit2/src/str.h +357 -0
  264. data/vendor/libgit2/src/streams/mbedtls.c +8 -6
  265. data/vendor/libgit2/src/streams/openssl_dynamic.h +3 -3
  266. data/vendor/libgit2/src/submodule.c +171 -159
  267. data/vendor/libgit2/src/submodule.h +1 -1
  268. data/vendor/libgit2/src/sysdir.c +68 -52
  269. data/vendor/libgit2/src/sysdir.h +15 -10
  270. data/vendor/libgit2/src/tag.c +29 -27
  271. data/vendor/libgit2/src/thread.h +3 -3
  272. data/vendor/libgit2/src/threadstate.c +3 -3
  273. data/vendor/libgit2/src/threadstate.h +1 -1
  274. data/vendor/libgit2/src/trace.c +1 -14
  275. data/vendor/libgit2/src/trace.h +5 -22
  276. data/vendor/libgit2/src/trailer.c +1 -1
  277. data/vendor/libgit2/src/transaction.c +1 -1
  278. data/vendor/libgit2/src/transport.c +10 -10
  279. data/vendor/libgit2/src/transports/auth.c +7 -9
  280. data/vendor/libgit2/src/transports/auth.h +2 -3
  281. data/vendor/libgit2/src/transports/auth_negotiate.c +12 -13
  282. data/vendor/libgit2/src/transports/auth_ntlm.c +10 -10
  283. data/vendor/libgit2/src/transports/auth_ntlm.h +0 -1
  284. data/vendor/libgit2/src/transports/git.c +9 -11
  285. data/vendor/libgit2/src/transports/http.c +37 -17
  286. data/vendor/libgit2/src/transports/http.h +2 -3
  287. data/vendor/libgit2/src/transports/httpclient.c +65 -65
  288. data/vendor/libgit2/src/transports/local.c +124 -116
  289. data/vendor/libgit2/src/transports/smart.c +51 -139
  290. data/vendor/libgit2/src/transports/smart.h +25 -31
  291. data/vendor/libgit2/src/transports/smart_pkt.c +33 -33
  292. data/vendor/libgit2/src/transports/smart_protocol.c +57 -39
  293. data/vendor/libgit2/src/transports/ssh.c +47 -112
  294. data/vendor/libgit2/src/transports/winhttp.c +50 -56
  295. data/vendor/libgit2/src/tree-cache.c +5 -5
  296. data/vendor/libgit2/src/tree-cache.h +2 -2
  297. data/vendor/libgit2/src/tree.c +59 -48
  298. data/vendor/libgit2/src/tree.h +1 -1
  299. data/vendor/libgit2/src/unix/map.c +0 -2
  300. data/vendor/libgit2/src/unix/posix.h +1 -4
  301. data/vendor/libgit2/src/unix/realpath.c +0 -2
  302. data/vendor/libgit2/src/util.c +14 -14
  303. data/vendor/libgit2/src/util.h +2 -28
  304. data/vendor/libgit2/src/vector.h +1 -1
  305. data/vendor/libgit2/src/win32/findfile.c +172 -116
  306. data/vendor/libgit2/src/win32/findfile.h +7 -4
  307. data/vendor/libgit2/src/win32/path_w32.c +140 -9
  308. data/vendor/libgit2/src/win32/path_w32.h +2 -0
  309. data/vendor/libgit2/src/win32/posix.h +0 -1
  310. data/vendor/libgit2/src/win32/posix_w32.c +11 -27
  311. data/vendor/libgit2/src/win32/w32_buffer.c +2 -3
  312. data/vendor/libgit2/src/win32/w32_buffer.h +2 -3
  313. data/vendor/libgit2/src/win32/w32_leakcheck.c +1 -1
  314. data/vendor/libgit2/src/worktree.c +116 -94
  315. data/vendor/libgit2/src/worktree.h +1 -1
  316. data/vendor/libgit2/src/xdiff/git-xdiff.h +53 -0
  317. data/vendor/libgit2/src/xdiff/xdiff.h +15 -15
  318. data/vendor/libgit2/src/xdiff/xdiffi.c +134 -108
  319. data/vendor/libgit2/src/xdiff/xemit.c +23 -7
  320. data/vendor/libgit2/src/xdiff/xhistogram.c +87 -78
  321. data/vendor/libgit2/src/xdiff/xinclude.h +1 -12
  322. data/vendor/libgit2/src/xdiff/xmerge.c +104 -117
  323. data/vendor/libgit2/src/xdiff/xpatience.c +6 -17
  324. data/vendor/libgit2/src/xdiff/xprepare.c +15 -20
  325. data/vendor/libgit2/src/xdiff/xutils.c +18 -7
  326. data/vendor/libgit2/src/zstream.c +5 -5
  327. data/vendor/libgit2/src/zstream.h +4 -4
  328. metadata +25 -10
  329. data/vendor/libgit2/src/buffer.h +0 -374
@@ -20,8 +20,6 @@
20
20
  *
21
21
  */
22
22
  #include "xinclude.h"
23
- #include "xtypes.h"
24
- #include "xdiff.h"
25
23
 
26
24
  /*
27
25
  * The basic idea of patience diff is to find lines that are unique in
@@ -78,7 +76,7 @@ struct hashmap {
78
76
 
79
77
  static int is_anchor(xpparam_t const *xpp, const char *line)
80
78
  {
81
- unsigned long i;
79
+ int i;
82
80
  for (i = 0; i < xpp->anchors_nr; i++) {
83
81
  if (!strncmp(line, xpp->anchors[i], strlen(xpp->anchors[i])))
84
82
  return 1;
@@ -92,7 +90,7 @@ static void insert_record(xpparam_t const *xpp, int line, struct hashmap *map,
92
90
  {
93
91
  xrecord_t **records = pass == 1 ?
94
92
  map->env->xdf1.recs : map->env->xdf2.recs;
95
- xrecord_t *record = records[line - 1], *other;
93
+ xrecord_t *record = records[line - 1];
96
94
  /*
97
95
  * After xdl_prepare_env() (or more precisely, due to
98
96
  * xdl_classify_record()), the "ha" member of the records (AKA lines)
@@ -106,11 +104,7 @@ static void insert_record(xpparam_t const *xpp, int line, struct hashmap *map,
106
104
  int index = (int)((record->ha << 1) % map->alloc);
107
105
 
108
106
  while (map->entries[index].line1) {
109
- other = map->env->xdf1.recs[map->entries[index].line1 - 1];
110
- if (map->entries[index].hash != record->ha ||
111
- !xdl_recmatch(record->ptr, record->size,
112
- other->ptr, other->size,
113
- map->xpp->flags)) {
107
+ if (map->entries[index].hash != record->ha) {
114
108
  if (++index >= map->alloc)
115
109
  index = 0;
116
110
  continue;
@@ -217,9 +211,6 @@ static struct entry *find_longest_common_sequence(struct hashmap *map)
217
211
  */
218
212
  int anchor_i = -1;
219
213
 
220
- if (!sequence)
221
- return NULL;
222
-
223
214
  for (entry = map->first; entry; entry = entry->next) {
224
215
  if (!entry->line2 || entry->line2 == NON_UNIQUE)
225
216
  continue;
@@ -258,8 +249,7 @@ static int match(struct hashmap *map, int line1, int line2)
258
249
  {
259
250
  xrecord_t *record1 = map->env->xdf1.recs[line1 - 1];
260
251
  xrecord_t *record2 = map->env->xdf2.recs[line2 - 1];
261
- return xdl_recmatch(record1->ptr, record1->size,
262
- record2->ptr, record2->size, map->xpp->flags);
252
+ return record1->ha == record2->ha;
263
253
  }
264
254
 
265
255
  static int patience_diff(mmfile_t *file1, mmfile_t *file2,
@@ -294,9 +284,6 @@ static int walk_common_sequence(struct hashmap *map, struct entry *first,
294
284
 
295
285
  /* Recurse */
296
286
  if (next1 > line1 || next2 > line2) {
297
- struct hashmap submap;
298
-
299
- memset(&submap, 0, sizeof(submap));
300
287
  if (patience_diff(map->file1, map->file2,
301
288
  map->xpp, map->env,
302
289
  line1, next1 - line1,
@@ -323,6 +310,8 @@ static int fall_back_to_classic_diff(struct hashmap *map,
323
310
  int line1, int count1, int line2, int count2)
324
311
  {
325
312
  xpparam_t xpp;
313
+
314
+ memset(&xpp, 0, sizeof(xpp));
326
315
  xpp.flags = map->xpp->flags & ~XDF_DIFF_ALGORITHM_MASK;
327
316
 
328
317
  return xdl_fall_back_diff(map->env, &xpp,
@@ -181,15 +181,11 @@ static int xdl_prepare_ctx(unsigned int pass, mmfile_t *mf, long narec, xpparam_
181
181
  if (!(recs = (xrecord_t **) xdl_malloc(narec * sizeof(xrecord_t *))))
182
182
  goto abort;
183
183
 
184
- if (XDF_DIFF_ALG(xpp->flags) == XDF_HISTOGRAM_DIFF)
185
- hbits = hsize = 0;
186
- else {
187
- hbits = xdl_hashbits((unsigned int) narec);
188
- hsize = 1 << hbits;
189
- if (!(rhash = (xrecord_t **) xdl_malloc(hsize * sizeof(xrecord_t *))))
190
- goto abort;
191
- memset(rhash, 0, hsize * sizeof(xrecord_t *));
192
- }
184
+ hbits = xdl_hashbits((unsigned int) narec);
185
+ hsize = 1 << hbits;
186
+ if (!(rhash = (xrecord_t **) xdl_malloc(hsize * sizeof(xrecord_t *))))
187
+ goto abort;
188
+ memset(rhash, 0, hsize * sizeof(xrecord_t *));
193
189
 
194
190
  nrec = 0;
195
191
  if ((cur = blk = xdl_mmfile_first(mf, &bsize)) != NULL) {
@@ -208,9 +204,7 @@ static int xdl_prepare_ctx(unsigned int pass, mmfile_t *mf, long narec, xpparam_
208
204
  crec->size = (long) (cur - prev);
209
205
  crec->ha = hav;
210
206
  recs[nrec++] = crec;
211
-
212
- if ((XDF_DIFF_ALG(xpp->flags) != XDF_HISTOGRAM_DIFF) &&
213
- xdl_classify_record(pass, cf, rhash, hbits, crec) < 0)
207
+ if (xdl_classify_record(pass, cf, rhash, hbits, crec) < 0)
214
208
  goto abort;
215
209
  }
216
210
  }
@@ -219,10 +213,13 @@ static int xdl_prepare_ctx(unsigned int pass, mmfile_t *mf, long narec, xpparam_
219
213
  goto abort;
220
214
  memset(rchg, 0, (nrec + 2) * sizeof(char));
221
215
 
222
- if (!(rindex = (long *) xdl_malloc((nrec + 1) * sizeof(long))))
223
- goto abort;
224
- if (!(ha = (unsigned long *) xdl_malloc((nrec + 1) * sizeof(unsigned long))))
225
- goto abort;
216
+ if ((XDF_DIFF_ALG(xpp->flags) != XDF_PATIENCE_DIFF) &&
217
+ (XDF_DIFF_ALG(xpp->flags) != XDF_HISTOGRAM_DIFF)) {
218
+ if (!(rindex = xdl_malloc((nrec + 1) * sizeof(*rindex))))
219
+ goto abort;
220
+ if (!(ha = xdl_malloc((nrec + 1) * sizeof(*ha))))
221
+ goto abort;
222
+ }
226
223
 
227
224
  xdf->nrec = nrec;
228
225
  xdf->recs = recs;
@@ -279,8 +276,7 @@ int xdl_prepare_env(mmfile_t *mf1, mmfile_t *mf2, xpparam_t const *xpp,
279
276
  enl1 = xdl_guess_lines(mf1, sample) + 1;
280
277
  enl2 = xdl_guess_lines(mf2, sample) + 1;
281
278
 
282
- if (XDF_DIFF_ALG(xpp->flags) != XDF_HISTOGRAM_DIFF &&
283
- xdl_init_classifier(&cf, enl1 + enl2 + 1, xpp->flags) < 0)
279
+ if (xdl_init_classifier(&cf, enl1 + enl2 + 1, xpp->flags) < 0)
284
280
  return -1;
285
281
 
286
282
  if (xdl_prepare_ctx(1, mf1, enl1, xpp, &cf, &xe->xdf1) < 0) {
@@ -305,8 +301,7 @@ int xdl_prepare_env(mmfile_t *mf1, mmfile_t *mf2, xpparam_t const *xpp,
305
301
  return -1;
306
302
  }
307
303
 
308
- if (XDF_DIFF_ALG(xpp->flags) != XDF_HISTOGRAM_DIFF)
309
- xdl_free_classifier(&cf);
304
+ xdl_free_classifier(&cf);
310
305
 
311
306
  return 0;
312
307
  }
@@ -23,8 +23,6 @@
23
23
  #include "xinclude.h"
24
24
 
25
25
 
26
-
27
-
28
26
  long xdl_bogosqrt(long n) {
29
27
  long i;
30
28
 
@@ -52,7 +50,7 @@ int xdl_emit_diffrec(char const *rec, long size, char const *pre, long psize,
52
50
  mb[2].size = strlen(mb[2].ptr);
53
51
  i++;
54
52
  }
55
- if (ecb->outf(ecb->priv, mb, i) < 0) {
53
+ if (ecb->out_line(ecb->priv, mb, i) < 0) {
56
54
 
57
55
  return -1;
58
56
  }
@@ -342,8 +340,9 @@ int xdl_num_out(char *out, long val) {
342
340
  return str - out;
343
341
  }
344
342
 
345
- int xdl_emit_hunk_hdr(long s1, long c1, long s2, long c2,
346
- const char *func, long funclen, xdemitcb_t *ecb) {
343
+ static int xdl_format_hunk_hdr(long s1, long c1, long s2, long c2,
344
+ const char *func, long funclen,
345
+ xdemitcb_t *ecb) {
347
346
  int nb = 0;
348
347
  mmbuffer_t mb;
349
348
  char buf[128];
@@ -376,7 +375,7 @@ int xdl_emit_hunk_hdr(long s1, long c1, long s2, long c2,
376
375
  nb += 3;
377
376
  if (func && funclen) {
378
377
  buf[nb++] = ' ';
379
- if (funclen > (long)(sizeof(buf) - nb - 1))
378
+ if (funclen > sizeof(buf) - nb - 1)
380
379
  funclen = sizeof(buf) - nb - 1;
381
380
  memcpy(buf + nb, func, funclen);
382
381
  nb += funclen;
@@ -385,9 +384,21 @@ int xdl_emit_hunk_hdr(long s1, long c1, long s2, long c2,
385
384
 
386
385
  mb.ptr = buf;
387
386
  mb.size = nb;
388
- if (ecb->outf(ecb->priv, &mb, 1) < 0)
387
+ if (ecb->out_line(ecb->priv, &mb, 1) < 0)
389
388
  return -1;
389
+ return 0;
390
+ }
390
391
 
392
+ int xdl_emit_hunk_hdr(long s1, long c1, long s2, long c2,
393
+ const char *func, long funclen,
394
+ xdemitcb_t *ecb) {
395
+ if (!ecb->out_hunk)
396
+ return xdl_format_hunk_hdr(s1, c1, s2, c2, func, funclen, ecb);
397
+ if (ecb->out_hunk(ecb->priv,
398
+ c1 ? s1 : s1 - 1, c1,
399
+ c2 ? s2 : s2 - 1, c2,
400
+ func, funclen) < 0)
401
+ return -1;
391
402
  return 0;
392
403
  }
393
404
 
@@ -9,7 +9,7 @@
9
9
 
10
10
  #include <zlib.h>
11
11
 
12
- #include "buffer.h"
12
+ #include "str.h"
13
13
 
14
14
  #define ZSTREAM_BUFFER_SIZE (1024 * 1024)
15
15
  #define ZSTREAM_BUFFER_MIN_EXTRA 8
@@ -164,7 +164,7 @@ int git_zstream_get_output(void *out, size_t *out_len, git_zstream *zstream)
164
164
  return 0;
165
165
  }
166
166
 
167
- static int zstream_buf(git_buf *out, const void *in, size_t in_len, git_zstream_t type)
167
+ static int zstream_buf(git_str *out, const void *in, size_t in_len, git_zstream_t type)
168
168
  {
169
169
  git_zstream zs = GIT_ZSTREAM_INIT;
170
170
  int error = 0;
@@ -178,7 +178,7 @@ static int zstream_buf(git_buf *out, const void *in, size_t in_len, git_zstream_
178
178
  while (!git_zstream_done(&zs)) {
179
179
  size_t step = git_zstream_suggest_output_len(&zs), written;
180
180
 
181
- if ((error = git_buf_grow_by(out, step)) < 0)
181
+ if ((error = git_str_grow_by(out, step)) < 0)
182
182
  goto done;
183
183
 
184
184
  written = out->asize - out->size;
@@ -199,12 +199,12 @@ done:
199
199
  return error;
200
200
  }
201
201
 
202
- int git_zstream_deflatebuf(git_buf *out, const void *in, size_t in_len)
202
+ int git_zstream_deflatebuf(git_str *out, const void *in, size_t in_len)
203
203
  {
204
204
  return zstream_buf(out, in, in_len, GIT_ZSTREAM_DEFLATE);
205
205
  }
206
206
 
207
- int git_zstream_inflatebuf(git_buf *out, const void *in, size_t in_len)
207
+ int git_zstream_inflatebuf(git_str *out, const void *in, size_t in_len)
208
208
  {
209
209
  return zstream_buf(out, in, in_len, GIT_ZSTREAM_INFLATE);
210
210
  }
@@ -11,11 +11,11 @@
11
11
 
12
12
  #include <zlib.h>
13
13
 
14
- #include "buffer.h"
14
+ #include "str.h"
15
15
 
16
16
  typedef enum {
17
17
  GIT_ZSTREAM_INFLATE,
18
- GIT_ZSTREAM_DEFLATE,
18
+ GIT_ZSTREAM_DEFLATE
19
19
  } git_zstream_t;
20
20
 
21
21
  typedef struct {
@@ -48,7 +48,7 @@ bool git_zstream_eos(git_zstream *zstream);
48
48
 
49
49
  void git_zstream_reset(git_zstream *zstream);
50
50
 
51
- int git_zstream_deflatebuf(git_buf *out, const void *in, size_t in_len);
52
- int git_zstream_inflatebuf(git_buf *out, const void *in, size_t in_len);
51
+ int git_zstream_deflatebuf(git_str *out, const void *in, size_t in_len);
52
+ int git_zstream_inflatebuf(git_str *out, const void *in, size_t in_len);
53
53
 
54
54
  #endif
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rugged
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.2.3
4
+ version: 1.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Chacon
8
8
  - Vicent Marti
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-07-13 00:00:00.000000000 Z
12
+ date: 2022-02-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake-compiler
@@ -124,11 +124,12 @@ files:
124
124
  - vendor/libgit2/CMakeLists.txt
125
125
  - vendor/libgit2/COPYING
126
126
  - vendor/libgit2/cmake/AddCFlagIfSupported.cmake
127
+ - vendor/libgit2/cmake/DefaultCFlags.cmake
127
128
  - vendor/libgit2/cmake/EnableWarnings.cmake
128
129
  - vendor/libgit2/cmake/FindCoreFoundation.cmake
129
130
  - vendor/libgit2/cmake/FindGSSAPI.cmake
130
131
  - vendor/libgit2/cmake/FindGSSFramework.cmake
131
- - vendor/libgit2/cmake/FindHTTP_Parser.cmake
132
+ - vendor/libgit2/cmake/FindHTTPParser.cmake
132
133
  - vendor/libgit2/cmake/FindIconv.cmake
133
134
  - vendor/libgit2/cmake/FindLibSSH2.cmake
134
135
  - vendor/libgit2/cmake/FindPCRE.cmake
@@ -142,8 +143,13 @@ files:
142
143
  - vendor/libgit2/cmake/PkgBuildConfig.cmake
143
144
  - vendor/libgit2/cmake/SanitizeBool.cmake
144
145
  - vendor/libgit2/cmake/SelectGSSAPI.cmake
146
+ - vendor/libgit2/cmake/SelectHTTPParser.cmake
145
147
  - vendor/libgit2/cmake/SelectHTTPSBackend.cmake
146
148
  - vendor/libgit2/cmake/SelectHashes.cmake
149
+ - vendor/libgit2/cmake/SelectRegex.cmake
150
+ - vendor/libgit2/cmake/SelectSSH.cmake
151
+ - vendor/libgit2/cmake/SelectWinHTTP.cmake
152
+ - vendor/libgit2/cmake/SelectZlib.cmake
147
153
  - vendor/libgit2/deps/chromium-zlib/CMakeLists.txt
148
154
  - vendor/libgit2/deps/http-parser/CMakeLists.txt
149
155
  - vendor/libgit2/deps/http-parser/COPYING
@@ -313,6 +319,7 @@ files:
313
319
  - vendor/libgit2/include/git2/sys/refdb_backend.h
314
320
  - vendor/libgit2/include/git2/sys/reflog.h
315
321
  - vendor/libgit2/include/git2/sys/refs.h
322
+ - vendor/libgit2/include/git2/sys/remote.h
316
323
  - vendor/libgit2/include/git2/sys/repository.h
317
324
  - vendor/libgit2/include/git2/sys/stream.h
318
325
  - vendor/libgit2/include/git2/sys/transport.h
@@ -354,8 +361,8 @@ files:
354
361
  - vendor/libgit2/src/blob.h
355
362
  - vendor/libgit2/src/branch.c
356
363
  - vendor/libgit2/src/branch.h
357
- - vendor/libgit2/src/buffer.c
358
- - vendor/libgit2/src/buffer.h
364
+ - vendor/libgit2/src/buf.c
365
+ - vendor/libgit2/src/buf.h
359
366
  - vendor/libgit2/src/cache.c
360
367
  - vendor/libgit2/src/cache.h
361
368
  - vendor/libgit2/src/cc-compat.h
@@ -384,6 +391,7 @@ files:
384
391
  - vendor/libgit2/src/config_snapshot.c
385
392
  - vendor/libgit2/src/crlf.c
386
393
  - vendor/libgit2/src/date.c
394
+ - vendor/libgit2/src/date.h
387
395
  - vendor/libgit2/src/delta.c
388
396
  - vendor/libgit2/src/delta.h
389
397
  - vendor/libgit2/src/describe.c
@@ -399,6 +407,7 @@ files:
399
407
  - vendor/libgit2/src/diff_parse.h
400
408
  - vendor/libgit2/src/diff_print.c
401
409
  - vendor/libgit2/src/diff_stats.c
410
+ - vendor/libgit2/src/diff_stats.h
402
411
  - vendor/libgit2/src/diff_tform.c
403
412
  - vendor/libgit2/src/diff_tform.h
404
413
  - vendor/libgit2/src/diff_xdiff.c
@@ -416,6 +425,8 @@ files:
416
425
  - vendor/libgit2/src/filebuf.h
417
426
  - vendor/libgit2/src/filter.c
418
427
  - vendor/libgit2/src/filter.h
428
+ - vendor/libgit2/src/fs_path.c
429
+ - vendor/libgit2/src/fs_path.h
419
430
  - vendor/libgit2/src/futils.c
420
431
  - vendor/libgit2/src/futils.h
421
432
  - vendor/libgit2/src/graph.c
@@ -463,7 +474,6 @@ files:
463
474
  - vendor/libgit2/src/merge_driver.h
464
475
  - vendor/libgit2/src/merge_file.c
465
476
  - vendor/libgit2/src/message.c
466
- - vendor/libgit2/src/message.h
467
477
  - vendor/libgit2/src/midx.c
468
478
  - vendor/libgit2/src/midx.h
469
479
  - vendor/libgit2/src/mwindow.c
@@ -516,6 +526,8 @@ files:
516
526
  - vendor/libgit2/src/proxy.h
517
527
  - vendor/libgit2/src/push.c
518
528
  - vendor/libgit2/src/push.h
529
+ - vendor/libgit2/src/rand.c
530
+ - vendor/libgit2/src/rand.h
519
531
  - vendor/libgit2/src/reader.c
520
532
  - vendor/libgit2/src/reader.h
521
533
  - vendor/libgit2/src/rebase.c
@@ -550,6 +562,8 @@ files:
550
562
  - vendor/libgit2/src/stash.c
551
563
  - vendor/libgit2/src/status.c
552
564
  - vendor/libgit2/src/status.h
565
+ - vendor/libgit2/src/str.c
566
+ - vendor/libgit2/src/str.h
553
567
  - vendor/libgit2/src/strarray.c
554
568
  - vendor/libgit2/src/stream.h
555
569
  - vendor/libgit2/src/streams/mbedtls.c
@@ -660,6 +674,7 @@ files:
660
674
  - vendor/libgit2/src/win32/win32-compat.h
661
675
  - vendor/libgit2/src/worktree.c
662
676
  - vendor/libgit2/src/worktree.h
677
+ - vendor/libgit2/src/xdiff/git-xdiff.h
663
678
  - vendor/libgit2/src/xdiff/xdiff.h
664
679
  - vendor/libgit2/src/xdiff/xdiffi.c
665
680
  - vendor/libgit2/src/xdiff/xdiffi.h
@@ -682,7 +697,7 @@ licenses:
682
697
  - MIT
683
698
  metadata:
684
699
  msys2_mingw_dependencies: libssh2 cmake
685
- post_install_message:
700
+ post_install_message:
686
701
  rdoc_options: []
687
702
  require_paths:
688
703
  - lib
@@ -697,8 +712,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
697
712
  - !ruby/object:Gem::Version
698
713
  version: '0'
699
714
  requirements: []
700
- rubygems_version: 3.3.7
701
- signing_key:
715
+ rubygems_version: 3.1.2
716
+ signing_key:
702
717
  specification_version: 4
703
718
  summary: Rugged is a Ruby binding to the libgit2 linkable library
704
719
  test_files: []