rugged 1.3.2 → 1.6.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 (547) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +34 -2
  3. data/ext/rugged/extconf.rb +7 -4
  4. data/ext/rugged/rugged.c +16 -0
  5. data/ext/rugged/rugged.h +4 -0
  6. data/ext/rugged/rugged_blame.c +2 -0
  7. data/ext/rugged/rugged_blob.c +3 -0
  8. data/ext/rugged/rugged_commit.c +1 -0
  9. data/ext/rugged/rugged_config.c +9 -2
  10. data/ext/rugged/rugged_diff.c +1 -0
  11. data/ext/rugged/rugged_index.c +2 -0
  12. data/ext/rugged/rugged_patch.c +1 -0
  13. data/ext/rugged/rugged_rebase.c +1 -0
  14. data/ext/rugged/rugged_reference.c +1 -0
  15. data/ext/rugged/rugged_remote.c +28 -10
  16. data/ext/rugged/rugged_repo.c +7 -9
  17. data/ext/rugged/rugged_revwalk.c +5 -1
  18. data/ext/rugged/rugged_settings.c +5 -0
  19. data/ext/rugged/rugged_submodule.c +1 -0
  20. data/ext/rugged/rugged_tag.c +1 -0
  21. data/ext/rugged/rugged_tree.c +4 -0
  22. data/lib/rugged/index.rb +1 -1
  23. data/lib/rugged/tree.rb +5 -1
  24. data/lib/rugged/version.rb +1 -1
  25. data/vendor/libgit2/CMakeLists.txt +132 -288
  26. data/vendor/libgit2/COPYING +106 -19
  27. data/vendor/libgit2/cmake/AddCFlagIfSupported.cmake +21 -21
  28. data/vendor/libgit2/cmake/AddClarTest.cmake +7 -0
  29. data/vendor/libgit2/cmake/DefaultCFlags.cmake +154 -0
  30. data/vendor/libgit2/cmake/EnableWarnings.cmake +13 -13
  31. data/vendor/libgit2/cmake/ExperimentalFeatures.cmake +23 -0
  32. data/vendor/libgit2/cmake/FindCoreFoundation.cmake +13 -13
  33. data/vendor/libgit2/cmake/FindGSSAPI.cmake +171 -287
  34. data/vendor/libgit2/cmake/FindGSSFramework.cmake +13 -13
  35. data/vendor/libgit2/cmake/{FindHTTP_Parser.cmake → FindHTTPParser.cmake} +17 -17
  36. data/vendor/libgit2/cmake/FindIconv.cmake +27 -27
  37. data/vendor/libgit2/cmake/FindLibSSH2.cmake +5 -5
  38. data/vendor/libgit2/cmake/FindPCRE.cmake +12 -13
  39. data/vendor/libgit2/cmake/FindPCRE2.cmake +12 -12
  40. data/vendor/libgit2/cmake/FindPkgLibraries.cmake +19 -19
  41. data/vendor/libgit2/cmake/FindSecurity.cmake +14 -14
  42. data/vendor/libgit2/cmake/FindStatNsec.cmake +12 -18
  43. data/vendor/libgit2/cmake/Findfutimens.cmake +8 -8
  44. data/vendor/libgit2/cmake/FindmbedTLS.cmake +63 -70
  45. data/vendor/libgit2/cmake/IdeSplitSources.cmake +18 -18
  46. data/vendor/libgit2/cmake/PkgBuildConfig.cmake +60 -60
  47. data/vendor/libgit2/cmake/SanitizeBool.cmake +20 -20
  48. data/vendor/libgit2/cmake/SelectGSSAPI.cmake +37 -37
  49. data/vendor/libgit2/cmake/SelectHTTPParser.cmake +19 -0
  50. data/vendor/libgit2/cmake/SelectHTTPSBackend.cmake +100 -100
  51. data/vendor/libgit2/cmake/SelectHashes.cmake +91 -53
  52. data/vendor/libgit2/cmake/SelectRegex.cmake +51 -0
  53. data/vendor/libgit2/cmake/SelectSSH.cmake +41 -0
  54. data/vendor/libgit2/cmake/SelectWinHTTP.cmake +17 -0
  55. data/vendor/libgit2/cmake/SelectZlib.cmake +34 -0
  56. data/vendor/libgit2/deps/chromium-zlib/CMakeLists.txt +6 -6
  57. data/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +33 -31
  58. data/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +3 -1
  59. data/vendor/libgit2/deps/ntlmclient/ntlm.c +4 -4
  60. data/vendor/libgit2/deps/ntlmclient/ntlm.h +4 -4
  61. data/vendor/libgit2/deps/ntlmclient/ntlmclient.h +2 -2
  62. data/vendor/libgit2/deps/pcre/CMakeLists.txt +88 -88
  63. data/vendor/libgit2/deps/winhttp/CMakeLists.txt +14 -16
  64. data/vendor/libgit2/deps/zlib/adler32.c +7 -0
  65. data/vendor/libgit2/deps/zlib/crc32.c +975 -288
  66. data/vendor/libgit2/deps/zlib/crc32.h +9441 -436
  67. data/vendor/libgit2/deps/zlib/deflate.c +83 -31
  68. data/vendor/libgit2/deps/zlib/deflate.h +12 -15
  69. data/vendor/libgit2/deps/zlib/gzguts.h +3 -2
  70. data/vendor/libgit2/deps/zlib/infback.c +2 -1
  71. data/vendor/libgit2/deps/zlib/inffast.c +14 -14
  72. data/vendor/libgit2/deps/zlib/inflate.c +39 -8
  73. data/vendor/libgit2/deps/zlib/inflate.h +3 -2
  74. data/vendor/libgit2/deps/zlib/inftrees.c +3 -3
  75. data/vendor/libgit2/deps/zlib/trees.c +27 -48
  76. data/vendor/libgit2/deps/zlib/zlib.h +126 -100
  77. data/vendor/libgit2/deps/zlib/zutil.c +2 -2
  78. data/vendor/libgit2/deps/zlib/zutil.h +12 -9
  79. data/vendor/libgit2/include/git2/apply.h +16 -2
  80. data/vendor/libgit2/include/git2/attr.h +11 -2
  81. data/vendor/libgit2/include/git2/blame.h +4 -1
  82. data/vendor/libgit2/include/git2/blob.h +14 -1
  83. data/vendor/libgit2/include/git2/branch.h +4 -2
  84. data/vendor/libgit2/include/git2/buffer.h +18 -78
  85. data/vendor/libgit2/include/git2/cert.h +2 -2
  86. data/vendor/libgit2/include/git2/checkout.h +5 -2
  87. data/vendor/libgit2/include/git2/clone.h +3 -3
  88. data/vendor/libgit2/include/git2/commit.h +2 -0
  89. data/vendor/libgit2/include/git2/common.h +28 -7
  90. data/vendor/libgit2/include/git2/config.h +25 -9
  91. data/vendor/libgit2/include/git2/credential.h +2 -1
  92. data/vendor/libgit2/include/git2/credential_helpers.h +1 -0
  93. data/vendor/libgit2/include/git2/deprecated.h +9 -1
  94. data/vendor/libgit2/include/git2/describe.h +7 -2
  95. data/vendor/libgit2/include/git2/diff.h +18 -10
  96. data/vendor/libgit2/include/git2/email.h +1 -1
  97. data/vendor/libgit2/include/git2/errors.h +17 -3
  98. data/vendor/libgit2/include/git2/experimental.h +20 -0
  99. data/vendor/libgit2/include/git2/filter.h +7 -2
  100. data/vendor/libgit2/include/git2/graph.h +1 -0
  101. data/vendor/libgit2/include/git2/ignore.h +1 -1
  102. data/vendor/libgit2/include/git2/index.h +11 -5
  103. data/vendor/libgit2/include/git2/indexer.h +48 -0
  104. data/vendor/libgit2/include/git2/merge.h +24 -4
  105. data/vendor/libgit2/include/git2/message.h +2 -0
  106. data/vendor/libgit2/include/git2/object.h +49 -0
  107. data/vendor/libgit2/include/git2/odb.h +94 -13
  108. data/vendor/libgit2/include/git2/odb_backend.h +107 -19
  109. data/vendor/libgit2/include/git2/oid.h +115 -15
  110. data/vendor/libgit2/include/git2/pack.h +24 -8
  111. data/vendor/libgit2/include/git2/patch.h +8 -0
  112. data/vendor/libgit2/include/git2/pathspec.h +1 -1
  113. data/vendor/libgit2/include/git2/proxy.h +1 -1
  114. data/vendor/libgit2/include/git2/rebase.h +9 -1
  115. data/vendor/libgit2/include/git2/refdb.h +3 -0
  116. data/vendor/libgit2/include/git2/reflog.h +1 -1
  117. data/vendor/libgit2/include/git2/refs.h +2 -2
  118. data/vendor/libgit2/include/git2/remote.h +184 -37
  119. data/vendor/libgit2/include/git2/repository.h +34 -10
  120. data/vendor/libgit2/include/git2/reset.h +2 -2
  121. data/vendor/libgit2/include/git2/revparse.h +1 -1
  122. data/vendor/libgit2/include/git2/revwalk.h +4 -1
  123. data/vendor/libgit2/include/git2/signature.h +1 -1
  124. data/vendor/libgit2/include/git2/stash.h +61 -7
  125. data/vendor/libgit2/include/git2/status.h +14 -5
  126. data/vendor/libgit2/include/git2/strarray.h +0 -13
  127. data/vendor/libgit2/include/git2/submodule.h +7 -2
  128. data/vendor/libgit2/include/git2/sys/commit_graph.h +1 -1
  129. data/vendor/libgit2/include/git2/sys/odb_backend.h +3 -6
  130. data/vendor/libgit2/include/git2/sys/remote.h +46 -0
  131. data/vendor/libgit2/include/git2/sys/stream.h +1 -1
  132. data/vendor/libgit2/include/git2/sys/transport.h +46 -39
  133. data/vendor/libgit2/include/git2/tag.h +1 -0
  134. data/vendor/libgit2/include/git2/tree.h +4 -3
  135. data/vendor/libgit2/include/git2/types.h +7 -7
  136. data/vendor/libgit2/include/git2/version.h +27 -6
  137. data/vendor/libgit2/include/git2/worktree.h +12 -2
  138. data/vendor/libgit2/include/git2.h +1 -0
  139. data/vendor/libgit2/src/CMakeLists.txt +177 -419
  140. data/vendor/libgit2/src/README.md +12 -0
  141. data/vendor/libgit2/src/cli/CMakeLists.txt +57 -0
  142. data/vendor/libgit2/src/cli/README.md +26 -0
  143. data/vendor/libgit2/src/cli/cli.h +20 -0
  144. data/vendor/libgit2/src/cli/cmd.c +21 -0
  145. data/vendor/libgit2/src/cli/cmd.h +33 -0
  146. data/vendor/libgit2/src/cli/cmd_cat_file.c +204 -0
  147. data/vendor/libgit2/src/cli/cmd_clone.c +176 -0
  148. data/vendor/libgit2/src/cli/cmd_hash_object.c +154 -0
  149. data/vendor/libgit2/src/cli/cmd_help.c +86 -0
  150. data/vendor/libgit2/src/cli/error.h +51 -0
  151. data/vendor/libgit2/src/cli/main.c +106 -0
  152. data/vendor/libgit2/src/cli/opt.c +669 -0
  153. data/vendor/libgit2/src/cli/opt.h +349 -0
  154. data/vendor/libgit2/src/cli/opt_usage.c +194 -0
  155. data/vendor/libgit2/src/cli/opt_usage.h +35 -0
  156. data/vendor/libgit2/src/cli/progress.c +345 -0
  157. data/vendor/libgit2/src/cli/progress.h +117 -0
  158. data/vendor/libgit2/src/cli/sighandler.h +20 -0
  159. data/vendor/libgit2/src/cli/unix/sighandler.c +36 -0
  160. data/vendor/libgit2/src/cli/win32/precompiled.h +3 -0
  161. data/vendor/libgit2/src/cli/win32/sighandler.c +37 -0
  162. data/vendor/libgit2/src/libgit2/CMakeLists.txt +141 -0
  163. data/vendor/libgit2/src/{annotated_commit.c → libgit2/annotated_commit.c} +1 -1
  164. data/vendor/libgit2/src/{annotated_commit.h → libgit2/annotated_commit.h} +2 -2
  165. data/vendor/libgit2/src/{apply.c → libgit2/apply.c} +18 -18
  166. data/vendor/libgit2/src/{apply.h → libgit2/apply.h} +2 -2
  167. data/vendor/libgit2/src/{attr.c → libgit2/attr.c} +18 -18
  168. data/vendor/libgit2/src/{attr_file.c → libgit2/attr_file.c} +18 -18
  169. data/vendor/libgit2/src/{attr_file.h → libgit2/attr_file.h} +4 -4
  170. data/vendor/libgit2/src/{attrcache.c → libgit2/attrcache.c} +18 -13
  171. data/vendor/libgit2/src/{blame.c → libgit2/blame.c} +2 -0
  172. data/vendor/libgit2/src/{blame_git.c → libgit2/blame_git.c} +1 -1
  173. data/vendor/libgit2/src/{blob.c → libgit2/blob.c} +38 -29
  174. data/vendor/libgit2/src/{blob.h → libgit2/blob.h} +3 -3
  175. data/vendor/libgit2/src/{branch.c → libgit2/branch.c} +164 -118
  176. data/vendor/libgit2/src/{branch.h → libgit2/branch.h} +15 -3
  177. data/vendor/libgit2/src/libgit2/buf.c +126 -0
  178. data/vendor/libgit2/src/libgit2/buf.h +50 -0
  179. data/vendor/libgit2/src/{checkout.c → libgit2/checkout.c} +74 -68
  180. data/vendor/libgit2/src/{cherrypick.c → libgit2/cherrypick.c} +13 -13
  181. data/vendor/libgit2/src/{clone.c → libgit2/clone.c} +96 -67
  182. data/vendor/libgit2/src/{commit.c → libgit2/commit.c} +178 -73
  183. data/vendor/libgit2/src/libgit2/commit.h +87 -0
  184. data/vendor/libgit2/src/{commit_graph.c → libgit2/commit_graph.c} +122 -89
  185. data/vendor/libgit2/src/{commit_graph.h → libgit2/commit_graph.h} +14 -4
  186. data/vendor/libgit2/src/{commit_list.c → libgit2/commit_list.c} +7 -4
  187. data/vendor/libgit2/src/libgit2/common.h +55 -0
  188. data/vendor/libgit2/src/{config.c → libgit2/config.c} +101 -69
  189. data/vendor/libgit2/src/{config.h → libgit2/config.h} +15 -2
  190. data/vendor/libgit2/src/{config_file.c → libgit2/config_file.c} +105 -93
  191. data/vendor/libgit2/src/{config_mem.c → libgit2/config_mem.c} +9 -9
  192. data/vendor/libgit2/src/{config_parse.c → libgit2/config_parse.c} +27 -23
  193. data/vendor/libgit2/src/{crlf.c → libgit2/crlf.c} +24 -21
  194. data/vendor/libgit2/src/{describe.c → libgit2/describe.c} +35 -27
  195. data/vendor/libgit2/src/{diff.c → libgit2/diff.c} +30 -9
  196. data/vendor/libgit2/src/{diff.h → libgit2/diff.h} +2 -4
  197. data/vendor/libgit2/src/{diff_driver.c → libgit2/diff_driver.c} +34 -36
  198. data/vendor/libgit2/src/{diff_driver.h → libgit2/diff_driver.h} +3 -3
  199. data/vendor/libgit2/src/{diff_file.c → libgit2/diff_file.c} +44 -26
  200. data/vendor/libgit2/src/{diff_generate.c → libgit2/diff_generate.c} +47 -18
  201. data/vendor/libgit2/src/{diff_generate.h → libgit2/diff_generate.h} +5 -3
  202. data/vendor/libgit2/src/{diff_print.c → libgit2/diff_print.c} +112 -100
  203. data/vendor/libgit2/src/{diff_stats.c → libgit2/diff_stats.c} +40 -29
  204. data/vendor/libgit2/src/libgit2/diff_stats.h +18 -0
  205. data/vendor/libgit2/src/{diff_tform.c → libgit2/diff_tform.c} +13 -8
  206. data/vendor/libgit2/src/{diff_xdiff.c → libgit2/diff_xdiff.c} +4 -8
  207. data/vendor/libgit2/src/{email.c → libgit2/email.c} +55 -39
  208. data/vendor/libgit2/src/{email.h → libgit2/email.h} +1 -1
  209. data/vendor/libgit2/src/{errors.c → libgit2/errors.c} +18 -18
  210. data/vendor/libgit2/src/{errors.h → libgit2/errors.h} +1 -2
  211. data/vendor/libgit2/src/libgit2/experimental.h.in +13 -0
  212. data/vendor/libgit2/src/{fetch.c → libgit2/fetch.c} +72 -27
  213. data/vendor/libgit2/src/{fetch.h → libgit2/fetch.h} +1 -1
  214. data/vendor/libgit2/src/{fetchhead.c → libgit2/fetchhead.c} +23 -23
  215. data/vendor/libgit2/src/{filter.c → libgit2/filter.c} +127 -53
  216. data/vendor/libgit2/src/{filter.h → libgit2/filter.h} +26 -5
  217. data/vendor/libgit2/src/{ident.c → libgit2/ident.c} +20 -20
  218. data/vendor/libgit2/src/{ignore.c → libgit2/ignore.c} +35 -34
  219. data/vendor/libgit2/src/{ignore.h → libgit2/ignore.h} +2 -2
  220. data/vendor/libgit2/src/{index.c → libgit2/index.c} +91 -90
  221. data/vendor/libgit2/src/{index.h → libgit2/index.h} +6 -3
  222. data/vendor/libgit2/src/{indexer.c → libgit2/indexer.c} +173 -92
  223. data/vendor/libgit2/src/{iterator.c → libgit2/iterator.c} +71 -61
  224. data/vendor/libgit2/src/{iterator.h → libgit2/iterator.h} +5 -5
  225. data/vendor/libgit2/src/{libgit2.c → libgit2/libgit2.c} +46 -11
  226. data/vendor/libgit2/src/{mailmap.c → libgit2/mailmap.c} +38 -36
  227. data/vendor/libgit2/src/{merge.c → libgit2/merge.c} +30 -30
  228. data/vendor/libgit2/src/{merge.h → libgit2/merge.h} +1 -14
  229. data/vendor/libgit2/src/{merge_driver.c → libgit2/merge_driver.c} +2 -2
  230. data/vendor/libgit2/src/{merge_file.c → libgit2/merge_file.c} +13 -3
  231. data/vendor/libgit2/src/{message.c → libgit2/message.c} +21 -10
  232. data/vendor/libgit2/src/{midx.c → libgit2/midx.c} +112 -92
  233. data/vendor/libgit2/src/{midx.h → libgit2/midx.h} +5 -4
  234. data/vendor/libgit2/src/{mwindow.c → libgit2/mwindow.c} +15 -12
  235. data/vendor/libgit2/src/{mwindow.h → libgit2/mwindow.h} +5 -2
  236. data/vendor/libgit2/src/{netops.c → libgit2/netops.c} +1 -2
  237. data/vendor/libgit2/src/{netops.h → libgit2/netops.h} +1 -1
  238. data/vendor/libgit2/src/{notes.c → libgit2/notes.c} +25 -34
  239. data/vendor/libgit2/src/{object.c → libgit2/object.c} +135 -30
  240. data/vendor/libgit2/src/{object.h → libgit2/object.h} +12 -3
  241. data/vendor/libgit2/src/{odb.c → libgit2/odb.c} +228 -81
  242. data/vendor/libgit2/src/{odb.h → libgit2/odb.h} +44 -5
  243. data/vendor/libgit2/src/{odb_loose.c → libgit2/odb_loose.c} +192 -134
  244. data/vendor/libgit2/src/{odb_mempack.c → libgit2/odb_mempack.c} +18 -5
  245. data/vendor/libgit2/src/{odb_pack.c → libgit2/odb_pack.c} +137 -85
  246. data/vendor/libgit2/src/{oid.c → libgit2/oid.c} +136 -90
  247. data/vendor/libgit2/src/libgit2/oid.h +273 -0
  248. data/vendor/libgit2/src/{oidmap.c → libgit2/oidmap.c} +1 -1
  249. data/vendor/libgit2/src/{pack-objects.c → libgit2/pack-objects.c} +56 -30
  250. data/vendor/libgit2/src/{pack-objects.h → libgit2/pack-objects.h} +11 -6
  251. data/vendor/libgit2/src/{pack.c → libgit2/pack.c} +114 -84
  252. data/vendor/libgit2/src/{pack.h → libgit2/pack.h} +31 -16
  253. data/vendor/libgit2/src/{parse.c → libgit2/parse.c} +4 -3
  254. data/vendor/libgit2/src/{patch.c → libgit2/patch.c} +3 -3
  255. data/vendor/libgit2/src/{patch.h → libgit2/patch.h} +1 -0
  256. data/vendor/libgit2/src/{patch_generate.c → libgit2/patch_generate.c} +27 -11
  257. data/vendor/libgit2/src/{patch_generate.h → libgit2/patch_generate.h} +5 -5
  258. data/vendor/libgit2/src/{patch_parse.c → libgit2/patch_parse.c} +29 -29
  259. data/vendor/libgit2/src/libgit2/path.c +375 -0
  260. data/vendor/libgit2/src/libgit2/path.h +68 -0
  261. data/vendor/libgit2/src/{pathspec.c → libgit2/pathspec.c} +6 -6
  262. data/vendor/libgit2/src/{pathspec.h → libgit2/pathspec.h} +2 -2
  263. data/vendor/libgit2/src/{proxy.c → libgit2/proxy.c} +4 -1
  264. data/vendor/libgit2/src/{proxy.h → libgit2/proxy.h} +1 -1
  265. data/vendor/libgit2/src/{push.c → libgit2/push.c} +43 -38
  266. data/vendor/libgit2/src/{push.h → libgit2/push.h} +4 -16
  267. data/vendor/libgit2/src/{reader.c → libgit2/reader.c} +9 -9
  268. data/vendor/libgit2/src/{reader.h → libgit2/reader.h} +2 -2
  269. data/vendor/libgit2/src/{rebase.c → libgit2/rebase.c} +119 -107
  270. data/vendor/libgit2/src/{refdb_fs.c → libgit2/refdb_fs.c} +506 -197
  271. data/vendor/libgit2/src/{reflog.c → libgit2/reflog.c} +7 -5
  272. data/vendor/libgit2/src/{reflog.h → libgit2/reflog.h} +1 -2
  273. data/vendor/libgit2/src/{refs.c → libgit2/refs.c} +34 -32
  274. data/vendor/libgit2/src/{refs.h → libgit2/refs.h} +2 -2
  275. data/vendor/libgit2/src/{refspec.c → libgit2/refspec.c} +32 -37
  276. data/vendor/libgit2/src/{refspec.h → libgit2/refspec.h} +5 -2
  277. data/vendor/libgit2/src/{remote.c → libgit2/remote.c} +718 -420
  278. data/vendor/libgit2/src/libgit2/remote.h +100 -0
  279. data/vendor/libgit2/src/{repository.c → libgit2/repository.c} +629 -386
  280. data/vendor/libgit2/src/{repository.h → libgit2/repository.h} +20 -9
  281. data/vendor/libgit2/src/{reset.c → libgit2/reset.c} +8 -5
  282. data/vendor/libgit2/src/{revert.c → libgit2/revert.c} +14 -14
  283. data/vendor/libgit2/src/{revparse.c → libgit2/revparse.c} +71 -42
  284. data/vendor/libgit2/src/{revwalk.c → libgit2/revwalk.c} +12 -8
  285. data/vendor/libgit2/src/{signature.c → libgit2/signature.c} +12 -6
  286. data/vendor/libgit2/src/{signature.h → libgit2/signature.h} +1 -1
  287. data/vendor/libgit2/src/{stash.c → libgit2/stash.c} +235 -61
  288. data/vendor/libgit2/src/{status.c → libgit2/status.c} +4 -1
  289. data/vendor/libgit2/src/{strarray.c → libgit2/strarray.c} +1 -0
  290. data/vendor/libgit2/src/libgit2/strarray.h +25 -0
  291. data/vendor/libgit2/src/{streams → libgit2/streams}/mbedtls.c +8 -6
  292. data/vendor/libgit2/src/{streams → libgit2/streams}/openssl.c +1 -1
  293. data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_dynamic.c +7 -3
  294. data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_dynamic.h +3 -3
  295. data/vendor/libgit2/src/{streams → libgit2/streams}/socket.c +4 -1
  296. data/vendor/libgit2/src/{submodule.c → libgit2/submodule.c} +177 -161
  297. data/vendor/libgit2/src/{submodule.h → libgit2/submodule.h} +1 -1
  298. data/vendor/libgit2/src/libgit2/sysdir.c +650 -0
  299. data/vendor/libgit2/src/{sysdir.h → libgit2/sysdir.h} +53 -18
  300. data/vendor/libgit2/src/{tag.c → libgit2/tag.c} +73 -42
  301. data/vendor/libgit2/src/{tag.h → libgit2/tag.h} +2 -2
  302. data/vendor/libgit2/src/{threadstate.c → libgit2/threadstate.c} +3 -3
  303. data/vendor/libgit2/src/{threadstate.h → libgit2/threadstate.h} +2 -2
  304. data/vendor/libgit2/src/{trace.c → libgit2/trace.c} +1 -14
  305. data/vendor/libgit2/src/{trace.h → libgit2/trace.h} +5 -22
  306. data/vendor/libgit2/src/{trailer.c → libgit2/trailer.c} +1 -1
  307. data/vendor/libgit2/src/{transaction.c → libgit2/transaction.c} +1 -1
  308. data/vendor/libgit2/src/{transport.c → libgit2/transport.c} +10 -10
  309. data/vendor/libgit2/src/{transports → libgit2/transports}/auth.c +7 -9
  310. data/vendor/libgit2/src/{transports → libgit2/transports}/auth.h +2 -3
  311. data/vendor/libgit2/src/{transports → libgit2/transports}/auth_negotiate.c +12 -13
  312. data/vendor/libgit2/src/{transports → libgit2/transports}/auth_ntlm.c +10 -10
  313. data/vendor/libgit2/src/{transports → libgit2/transports}/auth_ntlm.h +0 -1
  314. data/vendor/libgit2/src/{transports → libgit2/transports}/git.c +9 -11
  315. data/vendor/libgit2/src/{transports → libgit2/transports}/http.c +41 -20
  316. data/vendor/libgit2/src/{transports → libgit2/transports}/http.h +2 -3
  317. data/vendor/libgit2/src/{transports → libgit2/transports}/httpclient.c +75 -66
  318. data/vendor/libgit2/src/{transports → libgit2/transports}/httpclient.h +10 -0
  319. data/vendor/libgit2/src/{transports → libgit2/transports}/local.c +138 -116
  320. data/vendor/libgit2/src/{transports → libgit2/transports}/smart.c +92 -133
  321. data/vendor/libgit2/src/{transports → libgit2/transports}/smart.h +35 -32
  322. data/vendor/libgit2/src/{transports → libgit2/transports}/smart_pkt.c +177 -65
  323. data/vendor/libgit2/src/{transports → libgit2/transports}/smart_protocol.c +97 -49
  324. data/vendor/libgit2/src/{transports → libgit2/transports}/ssh.c +365 -198
  325. data/vendor/libgit2/src/{transports → libgit2/transports}/winhttp.c +58 -59
  326. data/vendor/libgit2/src/{tree-cache.c → libgit2/tree-cache.c} +8 -8
  327. data/vendor/libgit2/src/{tree-cache.h → libgit2/tree-cache.h} +2 -2
  328. data/vendor/libgit2/src/{tree.c → libgit2/tree.c} +93 -83
  329. data/vendor/libgit2/src/{tree.h → libgit2/tree.h} +4 -4
  330. data/vendor/libgit2/src/{worktree.c → libgit2/worktree.c} +121 -94
  331. data/vendor/libgit2/src/{worktree.h → libgit2/worktree.h} +1 -1
  332. data/vendor/libgit2/src/libgit2/xdiff/git-xdiff.h +53 -0
  333. data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xdiff.h +15 -15
  334. data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xdiffi.c +134 -108
  335. data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xemit.c +23 -7
  336. data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xhistogram.c +87 -78
  337. data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xinclude.h +1 -12
  338. data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xmerge.c +104 -117
  339. data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xpatience.c +6 -17
  340. data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xprepare.c +15 -20
  341. data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xutils.c +18 -7
  342. data/vendor/libgit2/src/util/CMakeLists.txt +80 -0
  343. data/vendor/libgit2/src/{allocators → util/allocators}/failalloc.h +1 -1
  344. data/vendor/libgit2/src/{allocators → util/allocators}/stdalloc.h +1 -1
  345. data/vendor/libgit2/src/{allocators → util/allocators}/win32_leakcheck.h +1 -1
  346. data/vendor/libgit2/src/{array.h → util/array.h} +1 -1
  347. data/vendor/libgit2/src/{assert_safe.h → util/assert_safe.h} +16 -0
  348. data/vendor/libgit2/src/{cc-compat.h → util/cc-compat.h} +1 -1
  349. data/vendor/libgit2/src/{date.c → util/date.c} +14 -20
  350. data/vendor/libgit2/src/util/date.h +33 -0
  351. data/vendor/libgit2/src/{filebuf.c → util/filebuf.c} +29 -29
  352. data/vendor/libgit2/src/{filebuf.h → util/filebuf.h} +2 -2
  353. data/vendor/libgit2/src/{path.c → util/fs_path.c} +453 -647
  354. data/vendor/libgit2/src/{path.h → util/fs_path.h} +221 -188
  355. data/vendor/libgit2/src/{futils.c → util/futils.c} +135 -90
  356. data/vendor/libgit2/src/{futils.h → util/futils.h} +28 -15
  357. data/vendor/libgit2/src/{features.h.in → util/git2_features.h.in} +15 -1
  358. data/vendor/libgit2/src/{common.h → util/git2_util.h} +20 -59
  359. data/vendor/libgit2/src/util/hash/builtin.c +53 -0
  360. data/vendor/libgit2/src/{hash/sha1/openssl.h → util/hash/builtin.h} +6 -6
  361. data/vendor/libgit2/src/{hash/sha1 → util/hash}/collisiondetect.c +3 -3
  362. data/vendor/libgit2/src/{hash/sha1 → util/hash}/collisiondetect.h +3 -3
  363. data/vendor/libgit2/src/util/hash/common_crypto.c +112 -0
  364. data/vendor/libgit2/src/{hash/sha1 → util/hash}/common_crypto.h +11 -3
  365. data/vendor/libgit2/src/util/hash/mbedtls.c +92 -0
  366. data/vendor/libgit2/src/{hash/sha1 → util/hash}/mbedtls.h +14 -4
  367. data/vendor/libgit2/src/util/hash/openssl.c +195 -0
  368. data/vendor/libgit2/src/util/hash/openssl.h +45 -0
  369. data/vendor/libgit2/src/util/hash/rfc6234/sha.h +243 -0
  370. data/vendor/libgit2/src/util/hash/rfc6234/sha224-256.c +601 -0
  371. data/vendor/libgit2/src/util/hash/sha.h +70 -0
  372. data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/sha1.c +1 -1
  373. data/vendor/libgit2/src/util/hash/win32.c +549 -0
  374. data/vendor/libgit2/src/util/hash/win32.h +60 -0
  375. data/vendor/libgit2/src/util/hash.c +158 -0
  376. data/vendor/libgit2/src/util/hash.h +61 -0
  377. data/vendor/libgit2/src/{khash.h → util/khash.h} +1 -1
  378. data/vendor/libgit2/src/{map.h → util/map.h} +1 -1
  379. data/vendor/libgit2/src/util/net.c +1003 -0
  380. data/vendor/libgit2/src/{net.h → util/net.h} +18 -4
  381. data/vendor/libgit2/src/{pool.h → util/pool.h} +1 -1
  382. data/vendor/libgit2/src/{posix.c → util/posix.c} +3 -3
  383. data/vendor/libgit2/src/{posix.h → util/posix.h} +4 -1
  384. data/vendor/libgit2/src/{pqueue.h → util/pqueue.h} +2 -2
  385. data/vendor/libgit2/src/util/rand.c +234 -0
  386. data/vendor/libgit2/src/util/rand.h +37 -0
  387. data/vendor/libgit2/src/{regexp.c → util/regexp.c} +4 -4
  388. data/vendor/libgit2/src/{regexp.h → util/regexp.h} +1 -1
  389. data/vendor/libgit2/src/{runtime.c → util/runtime.c} +1 -1
  390. data/vendor/libgit2/src/{runtime.h → util/runtime.h} +1 -1
  391. data/vendor/libgit2/src/{sortedcache.c → util/sortedcache.c} +1 -1
  392. data/vendor/libgit2/src/{sortedcache.h → util/sortedcache.h} +2 -2
  393. data/vendor/libgit2/src/{buffer.c → util/str.c} +157 -151
  394. data/vendor/libgit2/src/util/str.h +357 -0
  395. data/vendor/libgit2/src/{strmap.h → util/strmap.h} +1 -1
  396. data/vendor/libgit2/src/{thread.c → util/thread.c} +1 -1
  397. data/vendor/libgit2/src/{thread.h → util/thread.h} +23 -22
  398. data/vendor/libgit2/src/{tsort.c → util/tsort.c} +1 -1
  399. data/vendor/libgit2/src/{unix → util/unix}/map.c +1 -3
  400. data/vendor/libgit2/src/{unix → util/unix}/posix.h +1 -4
  401. data/vendor/libgit2/src/{unix → util/unix}/realpath.c +1 -3
  402. data/vendor/libgit2/src/{utf8.c → util/utf8.c} +1 -1
  403. data/vendor/libgit2/src/{utf8.h → util/utf8.h} +1 -1
  404. data/vendor/libgit2/src/{util.c → util/util.c} +15 -15
  405. data/vendor/libgit2/src/{util.h → util/util.h} +4 -29
  406. data/vendor/libgit2/src/{varint.h → util/varint.h} +1 -1
  407. data/vendor/libgit2/src/{vector.h → util/vector.h} +2 -2
  408. data/vendor/libgit2/src/{wildmatch.h → util/wildmatch.h} +1 -1
  409. data/vendor/libgit2/src/{win32 → util/win32}/dir.h +1 -1
  410. data/vendor/libgit2/src/{win32 → util/win32}/error.h +1 -1
  411. data/vendor/libgit2/src/{win32 → util/win32}/map.c +1 -1
  412. data/vendor/libgit2/src/{win32 → util/win32}/path_w32.c +140 -9
  413. data/vendor/libgit2/src/{win32 → util/win32}/path_w32.h +3 -1
  414. data/vendor/libgit2/src/{win32 → util/win32}/posix.h +1 -2
  415. data/vendor/libgit2/src/{win32 → util/win32}/posix_w32.c +12 -28
  416. data/vendor/libgit2/src/util/win32/precompiled.c +1 -0
  417. data/vendor/libgit2/src/{win32 → util/win32}/precompiled.h +1 -1
  418. data/vendor/libgit2/src/{win32 → util/win32}/thread.h +1 -1
  419. data/vendor/libgit2/src/{win32 → util/win32}/utf-conv.h +1 -1
  420. data/vendor/libgit2/src/{win32 → util/win32}/w32_buffer.c +2 -3
  421. data/vendor/libgit2/src/{win32 → util/win32}/w32_buffer.h +3 -4
  422. data/vendor/libgit2/src/{win32 → util/win32}/w32_leakcheck.c +1 -1
  423. data/vendor/libgit2/src/{win32 → util/win32}/w32_leakcheck.h +1 -1
  424. data/vendor/libgit2/src/{win32 → util/win32}/w32_util.h +1 -1
  425. data/vendor/libgit2/src/{zstream.c → util/zstream.c} +5 -5
  426. data/vendor/libgit2/src/{zstream.h → util/zstream.h} +5 -5
  427. metadata +402 -356
  428. data/vendor/libgit2/src/buffer.h +0 -374
  429. data/vendor/libgit2/src/commit.h +0 -46
  430. data/vendor/libgit2/src/hash/sha1/common_crypto.c +0 -57
  431. data/vendor/libgit2/src/hash/sha1/generic.c +0 -300
  432. data/vendor/libgit2/src/hash/sha1/generic.h +0 -19
  433. data/vendor/libgit2/src/hash/sha1/mbedtls.c +0 -46
  434. data/vendor/libgit2/src/hash/sha1/openssl.c +0 -59
  435. data/vendor/libgit2/src/hash/sha1/win32.c +0 -333
  436. data/vendor/libgit2/src/hash/sha1/win32.h +0 -128
  437. data/vendor/libgit2/src/hash/sha1.h +0 -38
  438. data/vendor/libgit2/src/hash.c +0 -110
  439. data/vendor/libgit2/src/hash.h +0 -46
  440. data/vendor/libgit2/src/message.h +0 -17
  441. data/vendor/libgit2/src/net.c +0 -540
  442. data/vendor/libgit2/src/oid.h +0 -51
  443. data/vendor/libgit2/src/remote.h +0 -55
  444. data/vendor/libgit2/src/sysdir.c +0 -347
  445. data/vendor/libgit2/src/win32/findfile.c +0 -230
  446. data/vendor/libgit2/src/win32/findfile.h +0 -19
  447. /data/vendor/libgit2/src/{win32 → cli/win32}/precompiled.c +0 -0
  448. /data/vendor/libgit2/src/{attr.h → libgit2/attr.h} +0 -0
  449. /data/vendor/libgit2/src/{attrcache.h → libgit2/attrcache.h} +0 -0
  450. /data/vendor/libgit2/src/{blame.h → libgit2/blame.h} +0 -0
  451. /data/vendor/libgit2/src/{blame_git.h → libgit2/blame_git.h} +0 -0
  452. /data/vendor/libgit2/src/{cache.c → libgit2/cache.c} +0 -0
  453. /data/vendor/libgit2/src/{cache.h → libgit2/cache.h} +0 -0
  454. /data/vendor/libgit2/src/{checkout.h → libgit2/checkout.h} +0 -0
  455. /data/vendor/libgit2/src/{clone.h → libgit2/clone.h} +0 -0
  456. /data/vendor/libgit2/src/{commit_list.h → libgit2/commit_list.h} +0 -0
  457. /data/vendor/libgit2/src/{config_backend.h → libgit2/config_backend.h} +0 -0
  458. /data/vendor/libgit2/src/{config_cache.c → libgit2/config_cache.c} +0 -0
  459. /data/vendor/libgit2/src/{config_entries.c → libgit2/config_entries.c} +0 -0
  460. /data/vendor/libgit2/src/{config_entries.h → libgit2/config_entries.h} +0 -0
  461. /data/vendor/libgit2/src/{config_parse.h → libgit2/config_parse.h} +0 -0
  462. /data/vendor/libgit2/src/{config_snapshot.c → libgit2/config_snapshot.c} +0 -0
  463. /data/vendor/libgit2/src/{delta.c → libgit2/delta.c} +0 -0
  464. /data/vendor/libgit2/src/{delta.h → libgit2/delta.h} +0 -0
  465. /data/vendor/libgit2/src/{diff_file.h → libgit2/diff_file.h} +0 -0
  466. /data/vendor/libgit2/src/{diff_parse.c → libgit2/diff_parse.c} +0 -0
  467. /data/vendor/libgit2/src/{diff_parse.h → libgit2/diff_parse.h} +0 -0
  468. /data/vendor/libgit2/src/{diff_tform.h → libgit2/diff_tform.h} +0 -0
  469. /data/vendor/libgit2/src/{diff_xdiff.h → libgit2/diff_xdiff.h} +0 -0
  470. /data/vendor/libgit2/src/{fetchhead.h → libgit2/fetchhead.h} +0 -0
  471. /data/vendor/libgit2/src/{win32 → libgit2}/git2.rc +0 -0
  472. /data/vendor/libgit2/src/{graph.c → libgit2/graph.c} +0 -0
  473. /data/vendor/libgit2/src/{hashsig.c → libgit2/hashsig.c} +0 -0
  474. /data/vendor/libgit2/src/{idxmap.c → libgit2/idxmap.c} +0 -0
  475. /data/vendor/libgit2/src/{idxmap.h → libgit2/idxmap.h} +0 -0
  476. /data/vendor/libgit2/src/{indexer.h → libgit2/indexer.h} +0 -0
  477. /data/vendor/libgit2/src/{libgit2.h → libgit2/libgit2.h} +0 -0
  478. /data/vendor/libgit2/src/{mailmap.h → libgit2/mailmap.h} +0 -0
  479. /data/vendor/libgit2/src/{merge_driver.h → libgit2/merge_driver.h} +0 -0
  480. /data/vendor/libgit2/src/{notes.h → libgit2/notes.h} +0 -0
  481. /data/vendor/libgit2/src/{object_api.c → libgit2/object_api.c} +0 -0
  482. /data/vendor/libgit2/src/{offmap.c → libgit2/offmap.c} +0 -0
  483. /data/vendor/libgit2/src/{offmap.h → libgit2/offmap.h} +0 -0
  484. /data/vendor/libgit2/src/{oidarray.c → libgit2/oidarray.c} +0 -0
  485. /data/vendor/libgit2/src/{oidarray.h → libgit2/oidarray.h} +0 -0
  486. /data/vendor/libgit2/src/{oidmap.h → libgit2/oidmap.h} +0 -0
  487. /data/vendor/libgit2/src/{parse.h → libgit2/parse.h} +0 -0
  488. /data/vendor/libgit2/src/{patch_parse.h → libgit2/patch_parse.h} +0 -0
  489. /data/vendor/libgit2/src/{refdb.c → libgit2/refdb.c} +0 -0
  490. /data/vendor/libgit2/src/{refdb.h → libgit2/refdb.h} +0 -0
  491. /data/vendor/libgit2/src/{repo_template.h → libgit2/repo_template.h} +0 -0
  492. /data/vendor/libgit2/src/{revwalk.h → libgit2/revwalk.h} +0 -0
  493. /data/vendor/libgit2/src/{settings.h → libgit2/settings.h} +0 -0
  494. /data/vendor/libgit2/src/{status.h → libgit2/status.h} +0 -0
  495. /data/vendor/libgit2/src/{stream.h → libgit2/stream.h} +0 -0
  496. /data/vendor/libgit2/src/{streams → libgit2/streams}/mbedtls.h +0 -0
  497. /data/vendor/libgit2/src/{streams → libgit2/streams}/openssl.h +0 -0
  498. /data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_legacy.c +0 -0
  499. /data/vendor/libgit2/src/{streams → libgit2/streams}/openssl_legacy.h +0 -0
  500. /data/vendor/libgit2/src/{streams → libgit2/streams}/registry.c +0 -0
  501. /data/vendor/libgit2/src/{streams → libgit2/streams}/registry.h +0 -0
  502. /data/vendor/libgit2/src/{streams → libgit2/streams}/socket.h +0 -0
  503. /data/vendor/libgit2/src/{streams → libgit2/streams}/stransport.c +0 -0
  504. /data/vendor/libgit2/src/{streams → libgit2/streams}/stransport.h +0 -0
  505. /data/vendor/libgit2/src/{streams → libgit2/streams}/tls.c +0 -0
  506. /data/vendor/libgit2/src/{streams → libgit2/streams}/tls.h +0 -0
  507. /data/vendor/libgit2/src/{transaction.h → libgit2/transaction.h} +0 -0
  508. /data/vendor/libgit2/src/{transports → libgit2/transports}/auth_negotiate.h +0 -0
  509. /data/vendor/libgit2/src/{transports → libgit2/transports}/credential.c +0 -0
  510. /data/vendor/libgit2/src/{transports → libgit2/transports}/credential_helpers.c +0 -0
  511. /data/vendor/libgit2/src/{transports → libgit2/transports}/ssh.h +0 -0
  512. /data/vendor/libgit2/src/{userdiff.h → libgit2/userdiff.h} +0 -0
  513. /data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xdiffi.h +0 -0
  514. /data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xemit.h +0 -0
  515. /data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xmacros.h +0 -0
  516. /data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xprepare.h +0 -0
  517. /data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xtypes.h +0 -0
  518. /data/vendor/libgit2/src/{xdiff → libgit2/xdiff}/xutils.h +0 -0
  519. /data/vendor/libgit2/src/{alloc.c → util/alloc.c} +0 -0
  520. /data/vendor/libgit2/src/{alloc.h → util/alloc.h} +0 -0
  521. /data/vendor/libgit2/src/{allocators → util/allocators}/failalloc.c +0 -0
  522. /data/vendor/libgit2/src/{allocators → util/allocators}/stdalloc.c +0 -0
  523. /data/vendor/libgit2/src/{allocators → util/allocators}/win32_leakcheck.c +0 -0
  524. /data/vendor/libgit2/src/{bitvec.h → util/bitvec.h} +0 -0
  525. /data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/sha1.h +0 -0
  526. /data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/ubc_check.c +0 -0
  527. /data/vendor/libgit2/src/{hash/sha1 → util/hash}/sha1dc/ubc_check.h +0 -0
  528. /data/vendor/libgit2/src/{integer.h → util/integer.h} +0 -0
  529. /data/vendor/libgit2/src/{pool.c → util/pool.c} +0 -0
  530. /data/vendor/libgit2/src/{pqueue.c → util/pqueue.c} +0 -0
  531. /data/vendor/libgit2/src/{strmap.c → util/strmap.c} +0 -0
  532. /data/vendor/libgit2/src/{strnlen.h → util/strnlen.h} +0 -0
  533. /data/vendor/libgit2/src/{unix → util/unix}/pthread.h +0 -0
  534. /data/vendor/libgit2/src/{varint.c → util/varint.c} +0 -0
  535. /data/vendor/libgit2/src/{vector.c → util/vector.c} +0 -0
  536. /data/vendor/libgit2/src/{wildmatch.c → util/wildmatch.c} +0 -0
  537. /data/vendor/libgit2/src/{win32 → util/win32}/dir.c +0 -0
  538. /data/vendor/libgit2/src/{win32 → util/win32}/error.c +0 -0
  539. /data/vendor/libgit2/src/{win32 → util/win32}/mingw-compat.h +0 -0
  540. /data/vendor/libgit2/src/{win32 → util/win32}/msvc-compat.h +0 -0
  541. /data/vendor/libgit2/src/{win32 → util/win32}/reparse.h +0 -0
  542. /data/vendor/libgit2/src/{win32 → util/win32}/thread.c +0 -0
  543. /data/vendor/libgit2/src/{win32 → util/win32}/utf-conv.c +0 -0
  544. /data/vendor/libgit2/src/{win32 → util/win32}/version.h +0 -0
  545. /data/vendor/libgit2/src/{win32 → util/win32}/w32_common.h +0 -0
  546. /data/vendor/libgit2/src/{win32 → util/win32}/w32_util.c +0 -0
  547. /data/vendor/libgit2/src/{win32 → util/win32}/win32-compat.h +0 -0
@@ -36,7 +36,7 @@ static int strip_comments(char *line, int in_quotes)
36
36
  char *ptr;
37
37
 
38
38
  for (ptr = line; *ptr; ++ptr) {
39
- if (ptr[0] == '"' && ptr > line && ptr[-1] != '\\')
39
+ if (ptr[0] == '"' && ((ptr > line && ptr[-1] != '\\') || ptr == line))
40
40
  quote_count++;
41
41
 
42
42
  if ((ptr[0] == ';' || ptr[0] == '#') &&
@@ -67,7 +67,7 @@ static int parse_subsection_header(git_config_parser *reader, const char *line,
67
67
  int c, rpos;
68
68
  const char *first_quote, *last_quote;
69
69
  const char *line_start = line;
70
- git_buf buf = GIT_BUF_INIT;
70
+ git_str buf = GIT_STR_INIT;
71
71
  size_t quoted_len, alloc_len, base_name_len = strlen(base_name);
72
72
 
73
73
  /* Skip any additional whitespace before our section name */
@@ -97,8 +97,8 @@ static int parse_subsection_header(git_config_parser *reader, const char *line,
97
97
  GIT_ERROR_CHECK_ALLOC_ADD(&alloc_len, base_name_len, quoted_len);
98
98
  GIT_ERROR_CHECK_ALLOC_ADD(&alloc_len, alloc_len, 2);
99
99
 
100
- if (git_buf_grow(&buf, alloc_len) < 0 ||
101
- git_buf_printf(&buf, "%s.", base_name) < 0)
100
+ if (git_str_grow(&buf, alloc_len) < 0 ||
101
+ git_str_printf(&buf, "%s.", base_name) < 0)
102
102
  goto end_error;
103
103
 
104
104
  rpos = 0;
@@ -132,25 +132,25 @@ static int parse_subsection_header(git_config_parser *reader, const char *line,
132
132
  break;
133
133
  }
134
134
 
135
- git_buf_putc(&buf, (char)c);
135
+ git_str_putc(&buf, (char)c);
136
136
  c = line[++rpos];
137
137
  } while (line + rpos < last_quote);
138
138
 
139
139
  end_parse:
140
- if (git_buf_oom(&buf))
140
+ if (git_str_oom(&buf))
141
141
  goto end_error;
142
142
 
143
143
  if (line[rpos] != '"' || line[rpos + 1] != ']') {
144
144
  set_parse_error(reader, rpos, "unexpected text after closing quotes");
145
- git_buf_dispose(&buf);
145
+ git_str_dispose(&buf);
146
146
  return -1;
147
147
  }
148
148
 
149
- *section_name = git_buf_detach(&buf);
149
+ *section_name = git_str_detach(&buf);
150
150
  return (int)(&line[rpos + 2] - line_start); /* rpos is at the closing quote */
151
151
 
152
152
  end_error:
153
- git_buf_dispose(&buf);
153
+ git_str_dispose(&buf);
154
154
 
155
155
  return -1;
156
156
  }
@@ -227,11 +227,11 @@ fail_parse:
227
227
 
228
228
  static int skip_bom(git_parse_ctx *parser)
229
229
  {
230
- git_buf buf = GIT_BUF_INIT_CONST(parser->content, parser->content_len);
231
- git_buf_bom_t bom;
232
- int bom_offset = git_buf_detect_bom(&bom, &buf);
230
+ git_str buf = GIT_STR_INIT_CONST(parser->content, parser->content_len);
231
+ git_str_bom_t bom;
232
+ int bom_offset = git_str_detect_bom(&bom, &buf);
233
233
 
234
- if (bom == GIT_BUF_BOM_UTF8)
234
+ if (bom == GIT_STR_BOM_UTF8)
235
235
  git_parse_advance_chars(parser, bom_offset);
236
236
 
237
237
  /* TODO: reference implementation is pretty stupid with BoM */
@@ -325,7 +325,7 @@ done:
325
325
  return 0;
326
326
  }
327
327
 
328
- static int parse_multiline_variable(git_config_parser *reader, git_buf *value, int in_quotes)
328
+ static int parse_multiline_variable(git_config_parser *reader, git_str *value, int in_quotes, size_t *line_len)
329
329
  {
330
330
  int quote_count;
331
331
  bool multiline = true;
@@ -338,6 +338,10 @@ static int parse_multiline_variable(git_config_parser *reader, git_buf *value, i
338
338
  git_parse_advance_line(&reader->ctx);
339
339
  line = git__strndup(reader->ctx.line, reader->ctx.line_len);
340
340
  GIT_ERROR_CHECK_ALLOC(line);
341
+ if (GIT_ADD_SIZET_OVERFLOW(line_len, *line_len, reader->ctx.line_len)) {
342
+ error = -1;
343
+ goto out;
344
+ }
341
345
 
342
346
  /*
343
347
  * We've reached the end of the file, there is no continuation.
@@ -358,7 +362,7 @@ static int parse_multiline_variable(git_config_parser *reader, git_buf *value, i
358
362
  goto out;
359
363
 
360
364
  /* Add this line to the multiline var */
361
- if ((error = git_buf_puts(value, proc_line)) < 0)
365
+ if ((error = git_str_puts(value, proc_line)) < 0)
362
366
  goto out;
363
367
 
364
368
  next:
@@ -415,7 +419,7 @@ static int parse_name(
415
419
  return 0;
416
420
  }
417
421
 
418
- static int parse_variable(git_config_parser *reader, char **var_name, char **var_value)
422
+ static int parse_variable(git_config_parser *reader, char **var_name, char **var_value, size_t *line_len)
419
423
  {
420
424
  const char *value_start = NULL;
421
425
  char *line = NULL, *name = NULL, *value = NULL;
@@ -445,18 +449,18 @@ static int parse_variable(git_config_parser *reader, char **var_name, char **var
445
449
  goto out;
446
450
 
447
451
  if (multiline) {
448
- git_buf multi_value = GIT_BUF_INIT;
449
- git_buf_attach(&multi_value, value, 0);
452
+ git_str multi_value = GIT_STR_INIT;
453
+ git_str_attach(&multi_value, value, 0);
450
454
  value = NULL;
451
455
 
452
- if (parse_multiline_variable(reader, &multi_value, quote_count % 2) < 0 ||
453
- git_buf_oom(&multi_value)) {
456
+ if (parse_multiline_variable(reader, &multi_value, quote_count % 2, line_len) < 0 ||
457
+ git_str_oom(&multi_value)) {
454
458
  error = -1;
455
- git_buf_dispose(&multi_value);
459
+ git_str_dispose(&multi_value);
456
460
  goto out;
457
461
  }
458
462
 
459
- value = git_buf_detach(&multi_value);
463
+ value = git_str_detach(&multi_value);
460
464
  }
461
465
  }
462
466
 
@@ -554,7 +558,7 @@ int git_config_parse(
554
558
  break;
555
559
 
556
560
  default: /* assume variable declaration */
557
- if ((result = parse_variable(parser, &var_name, &var_value)) == 0 && on_variable) {
561
+ if ((result = parse_variable(parser, &var_name, &var_value, &line_len)) == 0 && on_variable) {
558
562
  result = on_variable(parser, current_section, var_name, var_value, line_start, line_len, payload);
559
563
  git__free(var_name);
560
564
  git__free(var_value);
@@ -12,6 +12,7 @@
12
12
  #include "git2/index.h"
13
13
  #include "git2/sys/filter.h"
14
14
 
15
+ #include "buf.h"
15
16
  #include "futils.h"
16
17
  #include "hash.h"
17
18
  #include "filter.h"
@@ -25,7 +26,7 @@ typedef enum {
25
26
  GIT_CRLF_TEXT_CRLF,
26
27
  GIT_CRLF_AUTO,
27
28
  GIT_CRLF_AUTO_INPUT,
28
- GIT_CRLF_AUTO_CRLF,
29
+ GIT_CRLF_AUTO_CRLF
29
30
  } git_crlf_t;
30
31
 
31
32
  struct crlf_attrs {
@@ -152,7 +153,7 @@ static git_configmap_value output_eol(struct crlf_attrs *ca)
152
153
  GIT_INLINE(int) check_safecrlf(
153
154
  struct crlf_attrs *ca,
154
155
  const git_filter_source *src,
155
- git_buf_text_stats *stats)
156
+ git_str_text_stats *stats)
156
157
  {
157
158
  const char *filename = git_filter_source_path(src);
158
159
 
@@ -206,19 +207,19 @@ GIT_INLINE(int) check_safecrlf(
206
207
 
207
208
  static int crlf_apply_to_odb(
208
209
  struct crlf_attrs *ca,
209
- git_buf *to,
210
- const git_buf *from,
210
+ git_str *to,
211
+ const git_str *from,
211
212
  const git_filter_source *src)
212
213
  {
213
- git_buf_text_stats stats;
214
+ git_str_text_stats stats;
214
215
  bool is_binary;
215
216
  int error;
216
217
 
217
218
  /* Binary attribute? Empty file? Nothing to do */
218
- if (ca->crlf_action == GIT_CRLF_BINARY || !git_buf_len(from))
219
+ if (ca->crlf_action == GIT_CRLF_BINARY || from->size == 0)
219
220
  return GIT_PASSTHROUGH;
220
221
 
221
- is_binary = git_buf_gather_text_stats(&stats, from, false);
222
+ is_binary = git_str_gather_text_stats(&stats, from, false);
222
223
 
223
224
  /* Heuristics to see if we can skip the conversion.
224
225
  * Straight from Core Git.
@@ -246,22 +247,22 @@ static int crlf_apply_to_odb(
246
247
  return GIT_PASSTHROUGH;
247
248
 
248
249
  /* Actually drop the carriage returns */
249
- return git_buf_crlf_to_lf(to, from);
250
+ return git_str_crlf_to_lf(to, from);
250
251
  }
251
252
 
252
253
  static int crlf_apply_to_workdir(
253
254
  struct crlf_attrs *ca,
254
- git_buf *to,
255
- const git_buf *from)
255
+ git_str *to,
256
+ const git_str *from)
256
257
  {
257
- git_buf_text_stats stats;
258
+ git_str_text_stats stats;
258
259
  bool is_binary;
259
260
 
260
261
  /* Empty file? Nothing to do. */
261
- if (git_buf_len(from) == 0 || output_eol(ca) != GIT_EOL_CRLF)
262
+ if (git_str_len(from) == 0 || output_eol(ca) != GIT_EOL_CRLF)
262
263
  return GIT_PASSTHROUGH;
263
264
 
264
- is_binary = git_buf_gather_text_stats(&stats, from, false);
265
+ is_binary = git_str_gather_text_stats(&stats, from, false);
265
266
 
266
267
  /* If there are no LFs, or all LFs are part of a CRLF, nothing to do */
267
268
  if (stats.lf == 0 || stats.lf == stats.crlf)
@@ -280,7 +281,7 @@ static int crlf_apply_to_workdir(
280
281
  return GIT_PASSTHROUGH;
281
282
  }
282
283
 
283
- return git_buf_lf_to_crlf(to, from);
284
+ return git_str_lf_to_crlf(to, from);
284
285
  }
285
286
 
286
287
  static int convert_attrs(
@@ -368,22 +369,24 @@ static int crlf_check(
368
369
  static int crlf_apply(
369
370
  git_filter *self,
370
371
  void **payload, /* may be read and/or set */
371
- git_buf *to,
372
- const git_buf *from,
372
+ git_str *to,
373
+ const git_str *from,
373
374
  const git_filter_source *src)
374
375
  {
376
+ int error = 0;
377
+
375
378
  /* initialize payload in case `check` was bypassed */
376
379
  if (!*payload) {
377
- int error = crlf_check(self, payload, src, NULL);
378
-
379
- if (error < 0)
380
+ if ((error = crlf_check(self, payload, src, NULL)) < 0)
380
381
  return error;
381
382
  }
382
383
 
383
384
  if (git_filter_source_mode(src) == GIT_FILTER_SMUDGE)
384
- return crlf_apply_to_workdir(*payload, to, from);
385
+ error = crlf_apply_to_workdir(*payload, to, from);
385
386
  else
386
- return crlf_apply_to_odb(*payload, to, from, src);
387
+ error = crlf_apply_to_odb(*payload, to, from, src);
388
+
389
+ return error;
387
390
  }
388
391
 
389
392
  static int crlf_stream(
@@ -8,16 +8,17 @@
8
8
  #include "common.h"
9
9
 
10
10
  #include "git2/describe.h"
11
- #include "git2/strarray.h"
12
11
  #include "git2/diff.h"
13
12
  #include "git2/status.h"
14
13
 
14
+ #include "buf.h"
15
15
  #include "commit.h"
16
16
  #include "commit_list.h"
17
17
  #include "oidmap.h"
18
18
  #include "refs.h"
19
19
  #include "repository.h"
20
20
  #include "revwalk.h"
21
+ #include "strarray.h"
21
22
  #include "tag.h"
22
23
  #include "vector.h"
23
24
  #include "wildmatch.h"
@@ -322,7 +323,7 @@ static unsigned long finish_depth_computation(
322
323
  return seen_commits;
323
324
  }
324
325
 
325
- static int display_name(git_buf *buf, git_repository *repo, struct commit_name *n)
326
+ static int display_name(git_str *buf, git_repository *repo, struct commit_name *n)
326
327
  {
327
328
  if (n->prio == 2 && !n->tag) {
328
329
  if (git_tag_lookup(&n->tag, repo, &n->sha1) < 0) {
@@ -346,9 +347,9 @@ static int display_name(git_buf *buf, git_repository *repo, struct commit_name *
346
347
  }
347
348
 
348
349
  if (n->tag)
349
- git_buf_printf(buf, "%s", git_tag_name(n->tag));
350
+ git_str_printf(buf, "%s", git_tag_name(n->tag));
350
351
  else
351
- git_buf_printf(buf, "%s", n->path);
352
+ git_str_printf(buf, "%s", n->path);
352
353
 
353
354
  return 0;
354
355
  }
@@ -367,7 +368,7 @@ static int find_unique_abbrev_size(
367
368
  if ((error = git_repository_odb__weakptr(&odb, repo)) < 0)
368
369
  return error;
369
370
 
370
- while (size < GIT_OID_HEXSZ) {
371
+ while (size < GIT_OID_SHA1_HEXSIZE) {
371
372
  if ((error = git_odb_exists_prefix(&dummy, odb, oid_in, size)) == 0) {
372
373
  *out = (int) size;
373
374
  return 0;
@@ -382,13 +383,13 @@ static int find_unique_abbrev_size(
382
383
  }
383
384
 
384
385
  /* If we didn't find any shorter prefix, we have to do the whole thing */
385
- *out = GIT_OID_HEXSZ;
386
+ *out = GIT_OID_SHA1_HEXSIZE;
386
387
 
387
388
  return 0;
388
389
  }
389
390
 
390
391
  static int show_suffix(
391
- git_buf *buf,
392
+ git_str *buf,
392
393
  int depth,
393
394
  git_repository *repo,
394
395
  const git_oid *id,
@@ -396,24 +397,24 @@ static int show_suffix(
396
397
  {
397
398
  int error, size = 0;
398
399
 
399
- char hex_oid[GIT_OID_HEXSZ];
400
+ char hex_oid[GIT_OID_SHA1_HEXSIZE];
400
401
 
401
402
  if ((error = find_unique_abbrev_size(&size, repo, id, abbrev_size)) < 0)
402
403
  return error;
403
404
 
404
405
  git_oid_fmt(hex_oid, id);
405
406
 
406
- git_buf_printf(buf, "-%d-g", depth);
407
+ git_str_printf(buf, "-%d-g", depth);
407
408
 
408
- git_buf_put(buf, hex_oid, size);
409
+ git_str_put(buf, hex_oid, size);
409
410
 
410
- return git_buf_oom(buf) ? -1 : 0;
411
+ return git_str_oom(buf) ? -1 : 0;
411
412
  }
412
413
 
413
414
  #define MAX_CANDIDATES_TAGS FLAG_BITS - 1
414
415
 
415
416
  static int describe_not_found(const git_oid *oid, const char *message_format) {
416
- char oid_str[GIT_OID_HEXSZ + 1];
417
+ char oid_str[GIT_OID_SHA1_HEXSIZE + 1];
417
418
  git_oid_tostr(oid_str, sizeof(oid_str), oid);
418
419
 
419
420
  git_error_set(GIT_ERROR_DESCRIBE, message_format, oid_str);
@@ -524,7 +525,7 @@ static int describe(
524
525
  if (annotated_cnt && (git_pqueue_size(&list) == 0)) {
525
526
  /*
526
527
  if (debug) {
527
- char oid_str[GIT_OID_HEXSZ + 1];
528
+ char oid_str[GIT_OID_SHA1_HEXSIZE + 1];
528
529
  git_oid_tostr(oid_str, sizeof(oid_str), &c->oid);
529
530
 
530
531
  fprintf(stderr, "finished search at %s\n", oid_str);
@@ -591,7 +592,7 @@ static int describe(
591
592
  "head", "lightweight", "annotated",
592
593
  };
593
594
 
594
- char oid_str[GIT_OID_HEXSZ + 1];
595
+ char oid_str[GIT_OID_SHA1_HEXSIZE + 1];
595
596
 
596
597
  if (debug) {
597
598
  for (cur_match = 0; cur_match < match_cnt; cur_match++) {
@@ -769,7 +770,10 @@ static int normalize_format_options(
769
770
  return 0;
770
771
  }
771
772
 
772
- int git_describe_format(git_buf *out, const git_describe_result *result, const git_describe_format_options *given)
773
+ static int git_describe__format(
774
+ git_str *out,
775
+ const git_describe_result *result,
776
+ const git_describe_format_options *given)
773
777
  {
774
778
  int error;
775
779
  git_repository *repo;
@@ -782,10 +786,6 @@ int git_describe_format(git_buf *out, const git_describe_result *result, const g
782
786
  GIT_ERROR_CHECK_VERSION(given, GIT_DESCRIBE_FORMAT_OPTIONS_VERSION, "git_describe_format_options");
783
787
  normalize_format_options(&opts, given);
784
788
 
785
- if ((error = git_buf_sanitize(out)) < 0)
786
- return error;
787
-
788
-
789
789
  if (opts.always_use_long_format && opts.abbreviated_size == 0) {
790
790
  git_error_set(GIT_ERROR_DESCRIBE, "cannot describe - "
791
791
  "'always_use_long_format' is incompatible with a zero"
@@ -809,14 +809,14 @@ int git_describe_format(git_buf *out, const git_describe_result *result, const g
809
809
  }
810
810
 
811
811
  if (result->dirty && opts.dirty_suffix)
812
- git_buf_puts(out, opts.dirty_suffix);
812
+ git_str_puts(out, opts.dirty_suffix);
813
813
 
814
- return git_buf_oom(out) ? -1 : 0;
814
+ return git_str_oom(out) ? -1 : 0;
815
815
  }
816
816
 
817
817
  /* If we didn't find *any* tags, we fall back to the commit's id */
818
818
  if (result->fallback_to_id) {
819
- char hex_oid[GIT_OID_HEXSZ + 1] = {0};
819
+ char hex_oid[GIT_OID_SHA1_HEXSIZE + 1] = {0};
820
820
  int size = 0;
821
821
 
822
822
  if ((error = find_unique_abbrev_size(
@@ -824,12 +824,12 @@ int git_describe_format(git_buf *out, const git_describe_result *result, const g
824
824
  return -1;
825
825
 
826
826
  git_oid_fmt(hex_oid, &result->commit_id);
827
- git_buf_put(out, hex_oid, size);
827
+ git_str_put(out, hex_oid, size);
828
828
 
829
829
  if (result->dirty && opts.dirty_suffix)
830
- git_buf_puts(out, opts.dirty_suffix);
830
+ git_str_puts(out, opts.dirty_suffix);
831
831
 
832
- return git_buf_oom(out) ? -1 : 0;
832
+ return git_str_oom(out) ? -1 : 0;
833
833
  }
834
834
 
835
835
  /* Lastly, if we found a matching tag, we show that */
@@ -845,10 +845,18 @@ int git_describe_format(git_buf *out, const git_describe_result *result, const g
845
845
  }
846
846
 
847
847
  if (result->dirty && opts.dirty_suffix) {
848
- git_buf_puts(out, opts.dirty_suffix);
848
+ git_str_puts(out, opts.dirty_suffix);
849
849
  }
850
850
 
851
- return git_buf_oom(out) ? -1 : 0;
851
+ return git_str_oom(out) ? -1 : 0;
852
+ }
853
+
854
+ int git_describe_format(
855
+ git_buf *out,
856
+ const git_describe_result *result,
857
+ const git_describe_format_options *given)
858
+ {
859
+ GIT_BUF_WRAP_PRIVATE(out, git_describe__format, result, given);
852
860
  }
853
861
 
854
862
  void git_describe_result_free(git_describe_result *result)
@@ -8,6 +8,7 @@
8
8
  #include "diff.h"
9
9
 
10
10
  #include "common.h"
11
+ #include "buf.h"
11
12
  #include "patch.h"
12
13
  #include "email.h"
13
14
  #include "commit.h"
@@ -162,6 +163,7 @@ int git_diff_format_email(
162
163
  const git_diff_format_email_options *opts)
163
164
  {
164
165
  git_email_create_options email_create_opts = GIT_EMAIL_CREATE_OPTIONS_INIT;
166
+ git_str email = GIT_STR_INIT;
165
167
  int error;
166
168
 
167
169
  GIT_ASSERT_ARG(out);
@@ -172,14 +174,29 @@ int git_diff_format_email(
172
174
  GIT_DIFF_FORMAT_EMAIL_OPTIONS_VERSION,
173
175
  "git_format_email_options");
174
176
 
177
+ /* This is a `git_buf` special case; subsequent calls append. */
178
+ email.ptr = out->ptr;
179
+ email.asize = out->reserved;
180
+ email.size = out->size;
181
+
182
+ out->ptr = git_str__initstr;
183
+ out->reserved = 0;
184
+ out->size = 0;
185
+
175
186
  if ((opts->flags & GIT_DIFF_FORMAT_EMAIL_EXCLUDE_SUBJECT_PATCH_MARKER) != 0)
176
187
  email_create_opts.subject_prefix = "";
177
188
 
178
-
179
- error = git_email__append_from_diff(out, diff, opts->patch_no,
189
+ error = git_email__append_from_diff(&email, diff, opts->patch_no,
180
190
  opts->total_patches, opts->id, opts->summary, opts->body,
181
191
  opts->author, &email_create_opts);
182
192
 
193
+ if (error < 0)
194
+ goto done;
195
+
196
+ error = git_buf_fromstr(out, &email);
197
+
198
+ done:
199
+ git_str_dispose(&email);
183
200
  return error;
184
201
  }
185
202
 
@@ -269,11 +286,11 @@ static int flush_hunk(git_oid *result, git_hash_ctx *ctx)
269
286
  unsigned short carry = 0;
270
287
  int error, i;
271
288
 
272
- if ((error = git_hash_final(&hash, ctx)) < 0 ||
289
+ if ((error = git_hash_final(hash.id, ctx)) < 0 ||
273
290
  (error = git_hash_init(ctx)) < 0)
274
291
  return error;
275
292
 
276
- for (i = 0; i < GIT_OID_RAWSZ; i++) {
293
+ for (i = 0; i < GIT_OID_SHA1_SIZE; i++) {
277
294
  carry += result->id[i] + hash.id[i];
278
295
  result->id[i] = (unsigned char)carry;
279
296
  carry >>= 8;
@@ -282,7 +299,7 @@ static int flush_hunk(git_oid *result, git_hash_ctx *ctx)
282
299
  return 0;
283
300
  }
284
301
 
285
- static void strip_spaces(git_buf *buf)
302
+ static void strip_spaces(git_str *buf)
286
303
  {
287
304
  char *src = buf->ptr, *dst = buf->ptr;
288
305
  char c;
@@ -295,7 +312,7 @@ static void strip_spaces(git_buf *buf)
295
312
  }
296
313
  }
297
314
 
298
- git_buf_truncate(buf, len);
315
+ git_str_truncate(buf, len);
299
316
  }
300
317
 
301
318
  static int diff_patchid_print_callback_to_buf(
@@ -305,7 +322,7 @@ static int diff_patchid_print_callback_to_buf(
305
322
  void *payload)
306
323
  {
307
324
  struct patch_id_args *args = (struct patch_id_args *) payload;
308
- git_buf buf = GIT_BUF_INIT;
325
+ git_str buf = GIT_STR_INIT;
309
326
  int error = 0;
310
327
 
311
328
  if (line->origin == GIT_DIFF_LINE_CONTEXT_EOFNL ||
@@ -331,7 +348,7 @@ static int diff_patchid_print_callback_to_buf(
331
348
  args->first_file = 0;
332
349
 
333
350
  out:
334
- git_buf_dispose(&buf);
351
+ git_str_dispose(&buf);
335
352
  return error;
336
353
  }
337
354
 
@@ -352,7 +369,7 @@ int git_diff_patchid(git_oid *out, git_diff *diff, git_diff_patchid_options *opt
352
369
 
353
370
  memset(&args, 0, sizeof(args));
354
371
  args.first_file = 1;
355
- if ((error = git_hash_ctx_init(&args.ctx)) < 0)
372
+ if ((error = git_hash_ctx_init(&args.ctx, GIT_HASH_ALGORITHM_SHA1)) < 0)
356
373
  goto out;
357
374
 
358
375
  if ((error = git_diff_print(diff,
@@ -364,6 +381,10 @@ int git_diff_patchid(git_oid *out, git_diff *diff, git_diff_patchid_options *opt
364
381
  if ((error = (flush_hunk(&args.result, &args.ctx))) < 0)
365
382
  goto out;
366
383
 
384
+ #ifdef GIT_EXPERIMENTAL_SHA256
385
+ args.result.type = GIT_OID_SHA1;
386
+ #endif
387
+
367
388
  git_oid_cpy(out, &args.result);
368
389
 
369
390
  out:
@@ -14,9 +14,7 @@
14
14
  #include "git2/sys/diff.h"
15
15
  #include "git2/oid.h"
16
16
 
17
- #include <stdio.h>
18
17
  #include "vector.h"
19
- #include "buffer.h"
20
18
  #include "iterator.h"
21
19
  #include "repository.h"
22
20
  #include "pool.h"
@@ -28,7 +26,7 @@
28
26
  typedef enum {
29
27
  GIT_DIFF_TYPE_UNKNOWN = 0,
30
28
  GIT_DIFF_TYPE_GENERATED = 1,
31
- GIT_DIFF_TYPE_PARSED = 2,
29
+ GIT_DIFF_TYPE_PARSED = 2
32
30
  } git_diff_origin_t;
33
31
 
34
32
  struct git_diff {
@@ -53,7 +51,7 @@ struct git_diff {
53
51
  };
54
52
 
55
53
  extern int git_diff_delta__format_file_header(
56
- git_buf *out,
54
+ git_str *out,
57
55
  const git_diff_delta *delta,
58
56
  const char *oldpfx,
59
57
  const char *newpfx,