pj-nodegit 0.27.0 → 0.28.1

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 (1738) hide show
  1. package/.github/workflows/tests.yml +83 -15
  2. package/binding.gyp +23 -15
  3. package/dist/blob.js +0 -22
  4. package/dist/config.js +24 -0
  5. package/dist/credential.js +1 -1
  6. package/dist/deprecated/structs/ApplyOptions.js +5 -0
  7. package/dist/deprecated/structs/BlameOptions.js +8 -0
  8. package/dist/deprecated/structs/BlobFilterOptions.js +5 -0
  9. package/dist/deprecated/structs/CheckoutOptions.js +10 -0
  10. package/dist/deprecated/structs/CherrypickOptions.js +7 -0
  11. package/dist/deprecated/structs/CloneOptions.js +8 -0
  12. package/dist/deprecated/structs/DescribeFormatOptions.js +6 -0
  13. package/dist/deprecated/structs/DescribeOptions.js +8 -0
  14. package/dist/deprecated/structs/DiffFindOptions.js +10 -0
  15. package/dist/deprecated/structs/DiffOptions.js +10 -0
  16. package/dist/deprecated/structs/FetchOptions.js +9 -0
  17. package/dist/deprecated/structs/MergeFileInput.js +6 -0
  18. package/dist/deprecated/structs/MergeFileOptions.js +7 -0
  19. package/dist/deprecated/structs/MergeOptions.js +10 -0
  20. package/dist/deprecated/structs/ProxyOptions.js +5 -0
  21. package/dist/deprecated/structs/PushOptions.js +7 -0
  22. package/dist/deprecated/structs/RebaseOptions.js +8 -0
  23. package/dist/deprecated/structs/RemoteCreateOptions.js +5 -0
  24. package/dist/deprecated/structs/RepositoryInitOptions.js +6 -0
  25. package/dist/deprecated/structs/RevertOptions.js +7 -0
  26. package/dist/deprecated/structs/StashApplyOptions.js +6 -0
  27. package/dist/deprecated/structs/StatusOptions.js +6 -0
  28. package/dist/deprecated/structs/SubmoduleUpdateOptions.js +7 -0
  29. package/dist/diff.js +0 -46
  30. package/dist/enums.js +20 -6
  31. package/dist/filter_registry.js +0 -3
  32. package/dist/libgit2.js +2 -2
  33. package/dist/merge.js +0 -6
  34. package/dist/nodegit.js +253 -13
  35. package/dist/rebase.js +11 -53
  36. package/dist/remote.js +0 -204
  37. package/dist/repository.js +1 -4
  38. package/dist/reset.js +0 -25
  39. package/dist/revparse.js +19 -0
  40. package/dist/stash.js +0 -44
  41. package/dist/status.js +1 -3
  42. package/dist/submodule.js +0 -38
  43. package/include/annotated_commit.h +62 -22
  44. package/include/apply.h +56 -8
  45. package/include/apply_options.h +70 -71
  46. package/include/async_baton.h +65 -84
  47. package/include/async_worker.h +91 -0
  48. package/include/attr.h +37 -12
  49. package/include/blame.h +40 -14
  50. package/include/blame_hunk.h +18 -6
  51. package/include/blame_options.h +26 -44
  52. package/include/blob.h +106 -38
  53. package/include/blob_filter_options.h +27 -23
  54. package/include/branch.h +117 -41
  55. package/include/branch_iterator.h +18 -6
  56. package/include/buf.h +18 -6
  57. package/include/callback_wrapper.h +12 -17
  58. package/include/cert.h +18 -6
  59. package/include/cert_hostkey.h +21 -6
  60. package/include/cert_x509.h +18 -6
  61. package/include/checkout.h +48 -16
  62. package/include/checkout_options.h +110 -176
  63. package/include/checkout_perfdata.h +18 -6
  64. package/include/cherrypick.h +37 -12
  65. package/include/cherrypick_options.h +26 -32
  66. package/include/cleanup_handle.h +21 -0
  67. package/include/clone.h +26 -8
  68. package/include/clone_options.h +26 -50
  69. package/include/commit.h +161 -58
  70. package/include/config.h +227 -82
  71. package/include/config_entry.h +18 -6
  72. package/include/config_iterator.h +51 -18
  73. package/include/configmap.h +18 -6
  74. package/include/configurable_class_wrapper.h +59 -0
  75. package/include/context.h +90 -0
  76. package/include/convenient_hunk.h +19 -5
  77. package/include/convenient_patch.h +20 -5
  78. package/include/credential.h +40 -14
  79. package/include/describe_format_options.h +26 -30
  80. package/include/describe_options.h +26 -38
  81. package/include/describe_result.h +18 -6
  82. package/include/diff.h +190 -70
  83. package/include/diff_binary.h +18 -6
  84. package/include/diff_binary_file.h +18 -6
  85. package/include/diff_delta.h +18 -6
  86. package/include/diff_file.h +18 -6
  87. package/include/diff_find_options.h +26 -42
  88. package/include/diff_hunk.h +18 -6
  89. package/include/diff_line.h +18 -6
  90. package/include/diff_options.h +82 -120
  91. package/include/diff_patchid_options.h +27 -19
  92. package/include/diff_perfdata.h +18 -6
  93. package/include/diff_stats.h +29 -10
  94. package/include/error.h +18 -6
  95. package/include/fetch.h +15 -4
  96. package/include/fetch_options.h +26 -45
  97. package/include/filter.h +115 -142
  98. package/include/filter_list.h +62 -22
  99. package/include/filter_registry.h +24 -11
  100. package/include/filter_source.h +29 -10
  101. package/include/graph.h +37 -12
  102. package/include/hashsig.h +40 -14
  103. package/include/ignore.h +26 -8
  104. package/include/index.h +282 -99
  105. package/include/index_conflict_iterator.h +29 -10
  106. package/include/index_entry.h +74 -43
  107. package/include/index_iterator.h +29 -10
  108. package/include/index_name_entry.h +40 -14
  109. package/include/index_reuc_entry.h +62 -22
  110. package/include/index_time.h +59 -32
  111. package/include/indexer_progress.h +18 -6
  112. package/include/libgit2.h +15 -4
  113. package/include/lock_master.h +146 -165
  114. package/include/mailmap.h +84 -30
  115. package/include/merge.h +103 -36
  116. package/include/merge_file_input.h +26 -34
  117. package/include/merge_file_options.h +26 -42
  118. package/include/merge_file_result.h +18 -6
  119. package/include/merge_options.h +26 -46
  120. package/include/nodegit.h +0 -4
  121. package/include/nodegit_wrapper.h +35 -6
  122. package/include/note.h +117 -41
  123. package/include/note_iterator.h +18 -6
  124. package/include/object.h +84 -30
  125. package/include/odb.h +95 -34
  126. package/include/odb_object.h +18 -6
  127. package/include/oid.h +18 -6
  128. package/include/oid_shorten.h +18 -6
  129. package/include/oidarray.h +18 -6
  130. package/include/packbuilder.h +62 -22
  131. package/include/patch.h +77 -27
  132. package/include/path.h +15 -4
  133. package/include/pathspec.h +62 -22
  134. package/include/pathspec_match_list.h +18 -6
  135. package/include/promise_completion.h +7 -11
  136. package/include/proxy.h +15 -4
  137. package/include/proxy_options.h +85 -94
  138. package/include/push_options.h +26 -37
  139. package/include/push_update.h +18 -6
  140. package/include/rebase.h +73 -26
  141. package/include/rebase_operation.h +18 -6
  142. package/include/rebase_options.h +55 -76
  143. package/include/refdb.h +29 -10
  144. package/include/reference.h +175 -63
  145. package/include/reflog.h +40 -14
  146. package/include/reflog_entry.h +18 -6
  147. package/include/refspec.h +29 -10
  148. package/include/remote.h +280 -91
  149. package/include/remote_callbacks.h +201 -186
  150. package/include/remote_create_options.h +27 -35
  151. package/include/remote_head.h +18 -6
  152. package/include/repository.h +324 -105
  153. package/include/repository_init_options.h +26 -46
  154. package/include/reset.h +48 -16
  155. package/include/revert.h +37 -12
  156. package/include/revert_options.h +26 -32
  157. package/include/revparse.h +26 -8
  158. package/include/revspec.h +86 -0
  159. package/include/revwalk.h +62 -22
  160. package/include/signature.h +40 -14
  161. package/include/stash.h +81 -27
  162. package/include/stash_apply_options.h +49 -57
  163. package/include/status.h +70 -22
  164. package/include/status_entry.h +18 -6
  165. package/include/status_list.h +29 -10
  166. package/include/status_options.h +26 -31
  167. package/include/str_array_converter.h +2 -0
  168. package/include/strarray.h +19 -7
  169. package/include/submodule.h +216 -77
  170. package/include/submodule_update_options.h +26 -32
  171. package/include/tag.h +153 -55
  172. package/include/thread_pool.h +56 -51
  173. package/include/time.h +18 -6
  174. package/include/trace.h +15 -4
  175. package/include/tracker_wrap.h +76 -0
  176. package/include/transaction.h +29 -10
  177. package/include/transport.h +18 -6
  178. package/include/tree.h +73 -26
  179. package/include/tree_entry.h +29 -10
  180. package/include/tree_update.h +27 -32
  181. package/include/treebuilder.h +40 -14
  182. package/include/v8_helpers.h +10 -0
  183. package/include/worker_pool.h +180 -0
  184. package/include/worktree.h +119 -22
  185. package/include/worktree_add_options.h +33 -33
  186. package/include/worktree_prune_options.h +33 -33
  187. package/include/wrapper.h +2 -3
  188. package/include/writestream.h +18 -6
  189. package/lifecycleScripts/install.js +7 -1
  190. package/package.json +8 -9
  191. package/src/annotated_commit.cc +250 -258
  192. package/src/apply.cc +215 -108
  193. package/src/apply_options.cc +183 -218
  194. package/src/async_baton.cc +76 -2
  195. package/src/async_worker.cc +43 -0
  196. package/src/attr.cc +127 -147
  197. package/src/blame.cc +149 -154
  198. package/src/blame_hunk.cc +43 -43
  199. package/src/blame_options.cc +128 -164
  200. package/src/blob.cc +496 -517
  201. package/src/blob_filter_options.cc +49 -65
  202. package/src/branch.cc +577 -557
  203. package/src/branch_iterator.cc +6 -6
  204. package/src/buf.cc +35 -35
  205. package/src/cert.cc +10 -10
  206. package/src/cert_hostkey.cc +78 -30
  207. package/src/cert_x509.cc +20 -20
  208. package/src/checkout.cc +196 -205
  209. package/src/checkout_options.cc +435 -674
  210. package/src/checkout_perfdata.cc +18 -18
  211. package/src/cherrypick.cc +142 -150
  212. package/src/cherrypick_options.cc +83 -119
  213. package/src/cleanup_handle.cc +6 -0
  214. package/src/clone.cc +74 -75
  215. package/src/clone_options.cc +108 -194
  216. package/src/commit.cc +856 -910
  217. package/src/config.cc +997 -1034
  218. package/src/config_entry.cc +20 -20
  219. package/src/config_iterator.cc +173 -182
  220. package/src/configmap.cc +19 -19
  221. package/src/context.cc +84 -0
  222. package/src/convenient_hunk.cc +48 -22
  223. package/src/convenient_patch.cc +65 -35
  224. package/src/credential.cc +153 -161
  225. package/src/describe_format_options.cc +74 -104
  226. package/src/describe_options.cc +96 -134
  227. package/src/describe_result.cc +6 -6
  228. package/src/diff.cc +911 -920
  229. package/src/diff_binary.cc +20 -20
  230. package/src/diff_binary_file.cc +23 -23
  231. package/src/diff_delta.cc +32 -32
  232. package/src/diff_file.cc +32 -32
  233. package/src/diff_find_options.cc +104 -140
  234. package/src/diff_hunk.cc +31 -31
  235. package/src/diff_line.cc +35 -35
  236. package/src/diff_options.cc +310 -384
  237. package/src/diff_patchid_options.cc +37 -49
  238. package/src/diff_perfdata.cc +14 -14
  239. package/src/diff_stats.cc +77 -80
  240. package/src/error.cc +30 -30
  241. package/src/fetch.cc +2 -2
  242. package/src/fetch_options.cc +142 -181
  243. package/src/filter.cc +336 -495
  244. package/src/filter_list.cc +239 -260
  245. package/src/filter_registry.cc +77 -26
  246. package/src/filter_source.cc +65 -48
  247. package/src/graph.cc +127 -125
  248. package/src/hashsig.cc +120 -128
  249. package/src/ignore.cc +65 -70
  250. package/src/index.cc +1216 -1250
  251. package/src/index_conflict_iterator.cc +71 -72
  252. package/src/index_entry.cc +308 -96
  253. package/src/index_iterator.cc +65 -66
  254. package/src/index_name_entry.cc +132 -144
  255. package/src/index_reuc_entry.cc +258 -276
  256. package/src/index_time.cc +121 -45
  257. package/src/indexer_progress.cc +34 -34
  258. package/src/libgit2.cc +23 -23
  259. package/src/lock_master.cc +190 -197
  260. package/src/mailmap.cc +329 -349
  261. package/src/merge.cc +591 -595
  262. package/src/merge_file_input.cc +88 -128
  263. package/src/merge_file_options.cc +113 -169
  264. package/src/merge_file_result.cc +30 -30
  265. package/src/merge_options.cc +118 -166
  266. package/src/nodegit.cc +158 -229
  267. package/src/nodegit_wrapper.cc +71 -8
  268. package/src/note.cc +527 -552
  269. package/src/note_iterator.cc +6 -6
  270. package/src/object.cc +380 -386
  271. package/src/odb.cc +391 -408
  272. package/src/odb_object.cc +28 -28
  273. package/src/oid.cc +59 -59
  274. package/src/oid_shorten.cc +17 -17
  275. package/src/oidarray.cc +15 -15
  276. package/src/packbuilder.cc +250 -254
  277. package/src/patch.cc +418 -347
  278. package/src/path.cc +7 -7
  279. package/src/pathspec.cc +229 -249
  280. package/src/pathspec_match_list.cc +34 -34
  281. package/src/promise_completion.cc +32 -15
  282. package/src/proxy.cc +2 -2
  283. package/src/proxy_options.cc +203 -254
  284. package/src/push_options.cc +119 -146
  285. package/src/push_update.cc +26 -26
  286. package/src/rebase.cc +370 -378
  287. package/src/rebase_operation.cc +20 -20
  288. package/src/rebase_options.cc +172 -242
  289. package/src/refdb.cc +64 -65
  290. package/src/reference.cc +973 -962
  291. package/src/reference_counter.cc +2 -2
  292. package/src/reflog.cc +138 -142
  293. package/src/reflog_entry.cc +30 -30
  294. package/src/refspec.cc +98 -101
  295. package/src/remote.cc +1592 -1456
  296. package/src/remote_callbacks.cc +671 -544
  297. package/src/remote_create_options.cc +91 -140
  298. package/src/remote_head.cc +30 -30
  299. package/src/repository.cc +3248 -1216
  300. package/src/repository_init_options.cc +138 -208
  301. package/src/reset.cc +185 -204
  302. package/src/revert.cc +142 -152
  303. package/src/revert_options.cc +83 -119
  304. package/src/revparse.cc +62 -65
  305. package/src/revspec.cc +130 -0
  306. package/src/revwalk.cc +255 -201
  307. package/src/signature.cc +139 -141
  308. package/src/stash.cc +294 -312
  309. package/src/stash_apply_options.cc +133 -179
  310. package/src/status.cc +199 -197
  311. package/src/status_entry.cc +20 -20
  312. package/src/status_list.cc +85 -85
  313. package/src/status_options.cc +96 -111
  314. package/src/str_array_converter.cc +16 -0
  315. package/src/strarray.cc +20 -20
  316. package/src/submodule.cc +990 -1036
  317. package/src/submodule_update_options.cc +83 -119
  318. package/src/tag.cc +772 -763
  319. package/src/thread_pool.cc +748 -87
  320. package/src/time.cc +19 -19
  321. package/src/trace.cc +2 -2
  322. package/src/tracker_wrap.cc +238 -0
  323. package/src/transaction.cc +89 -90
  324. package/src/transport.cc +6 -6
  325. package/src/tree.cc +349 -346
  326. package/src/tree_entry.cc +87 -88
  327. package/src/tree_update.cc +83 -117
  328. package/src/treebuilder.cc +137 -141
  329. package/src/v8_helpers.cc +19 -0
  330. package/src/worktree.cc +539 -328
  331. package/src/worktree_add_options.cc +59 -51
  332. package/src/worktree_prune_options.cc +59 -51
  333. package/src/wrapper.cc +10 -10
  334. package/src/writestream.cc +6 -6
  335. package/utils/README.md +1 -13
  336. package/utils/acquireOpenSSL.js +196 -62
  337. package/utils/build-openssl.bat +13 -0
  338. package/utils/execPromise.js +9 -2
  339. package/utils/getElectronOpenSSLRoot.js +10 -0
  340. package/vendor/libgit2/.gitattributes +1 -0
  341. package/vendor/libgit2/.github/workflows/codeql.yml +36 -0
  342. package/vendor/libgit2/.github/workflows/main.yml +98 -34
  343. package/vendor/libgit2/.github/workflows/nightly.yml +292 -0
  344. package/vendor/libgit2/CMakeLists.txt +6 -6
  345. package/vendor/libgit2/README.md +29 -5
  346. package/vendor/libgit2/{azure-pipelines → ci}/build.sh +12 -1
  347. package/vendor/libgit2/{azure-pipelines → ci}/coverity.sh +0 -0
  348. package/vendor/libgit2/{azure-pipelines → ci}/docker/bionic +4 -1
  349. package/vendor/libgit2/{azure-pipelines → ci}/docker/docurium +2 -1
  350. package/vendor/libgit2/{azure-pipelines → ci}/docker/entrypoint.sh +0 -0
  351. package/vendor/libgit2/{azure-pipelines → ci}/docker/focal +5 -4
  352. package/vendor/libgit2/{azure-pipelines → ci}/docker/xenial +2 -1
  353. package/vendor/libgit2/{azure-pipelines → ci}/getcontainer.sh +17 -11
  354. package/vendor/libgit2/{azure-pipelines → ci}/setup-mingw.sh +0 -0
  355. package/vendor/libgit2/{azure-pipelines → ci}/setup-osx.sh +0 -0
  356. package/vendor/libgit2/{azure-pipelines → ci}/test.sh +0 -0
  357. package/vendor/libgit2/deps/chromium-zlib/CMakeLists.txt +101 -0
  358. package/vendor/libgit2/deps/ntlmclient/CMakeLists.txt +1 -0
  359. package/vendor/libgit2/deps/ntlmclient/compat.h +0 -27
  360. package/vendor/libgit2/deps/ntlmclient/crypt_openssl.c +1 -1
  361. package/vendor/libgit2/deps/ntlmclient/ntlm.c +5 -5
  362. package/vendor/libgit2/deps/ntlmclient/util.c +15 -1
  363. package/vendor/libgit2/deps/ntlmclient/util.h +2 -1
  364. package/vendor/libgit2/deps/pcre/LICENCE +93 -0
  365. package/vendor/libgit2/deps/pcre/pcre.h +2 -2
  366. package/vendor/libgit2/deps/pcre/pcre_compile.c +29 -17
  367. package/vendor/libgit2/deps/pcre/pcre_jit_compile.c +4 -4
  368. package/vendor/libgit2/deps/pcre/pcreposix.c +2 -3
  369. package/vendor/libgit2/examples/blame.c +1 -1
  370. package/vendor/libgit2/examples/checkout.c +1 -1
  371. package/vendor/libgit2/examples/common.h +1 -1
  372. package/vendor/libgit2/examples/general.c +0 -5
  373. package/vendor/libgit2/examples/log.c +3 -3
  374. package/vendor/libgit2/examples/rev-list.c +1 -1
  375. package/vendor/libgit2/examples/rev-parse.c +3 -3
  376. package/vendor/libgit2/examples/tag.c +2 -2
  377. package/vendor/libgit2/fuzzers/commit_graph_fuzzer.c +80 -0
  378. package/vendor/libgit2/fuzzers/corpora/commit_graph/005682ce1cb5b20c20fccf4be5dbd47ca399e53e +0 -0
  379. package/vendor/libgit2/fuzzers/corpora/commit_graph/00574fc29fd1323e93d18d625cde80d3ea20e8cc +0 -0
  380. package/vendor/libgit2/fuzzers/corpora/commit_graph/00916ec21ddbd3c622bde6e4dc824250176b9e88 +0 -0
  381. package/vendor/libgit2/fuzzers/corpora/commit_graph/00b6dde4b8d5e68a5ec40d88c39134cf2f1f8bc3 +0 -0
  382. package/vendor/libgit2/fuzzers/corpora/commit_graph/020f0e77e42d8b3810019050f4c5ceadd205b37c +0 -0
  383. package/vendor/libgit2/fuzzers/corpora/commit_graph/02739c05abc1715fac1ce995b532e482abc8d4dc +0 -0
  384. package/vendor/libgit2/fuzzers/corpora/commit_graph/02a276faa5dc8c7df5b82a57ab6cd195a13e4ae0 +0 -0
  385. package/vendor/libgit2/fuzzers/corpora/commit_graph/02de15987d68a97db3d9fd964cfd785bcbd54d3a +0 -0
  386. package/vendor/libgit2/fuzzers/corpora/commit_graph/02e106f97a91b1d3aef4dd2d31368ae5077bd42b +0 -0
  387. package/vendor/libgit2/fuzzers/corpora/commit_graph/038555bcb4cc2daf764840f79ebce4023bdb7670 +0 -0
  388. package/vendor/libgit2/fuzzers/corpora/commit_graph/04c159a04b0732e04ac4c59ed3356860af8dffce +0 -0
  389. package/vendor/libgit2/fuzzers/corpora/commit_graph/0560ec993882ffbd8d46dcab0ed430089c4f2aa1 +0 -0
  390. package/vendor/libgit2/fuzzers/corpora/commit_graph/059b3aab3fde6b4c9404aff83fed638596f594bb +0 -0
  391. package/vendor/libgit2/fuzzers/corpora/commit_graph/06168e726aa0260f520165be4ea0c88244831049 +0 -0
  392. package/vendor/libgit2/fuzzers/corpora/commit_graph/066d1ec700a526b97009cedd0305b6a47242faba +0 -0
  393. package/vendor/libgit2/fuzzers/corpora/commit_graph/086a5f8cbfa9f058b5c938a6eb724c9e4c5f84f3 +0 -0
  394. package/vendor/libgit2/fuzzers/corpora/commit_graph/089313c698f3e351433e9a45af2ace1d85b9673e +0 -0
  395. package/vendor/libgit2/fuzzers/corpora/commit_graph/092eb973a771fa14cf0b567d65bd2c99130f543e +0 -0
  396. package/vendor/libgit2/fuzzers/corpora/commit_graph/094b8cd1aa3e40b1f9ff83680892d52e246df0f8 +0 -0
  397. package/vendor/libgit2/fuzzers/corpora/commit_graph/0ce990c9c2ec121b8c78ba2bdf84679e04c0bdae +0 -0
  398. package/vendor/libgit2/fuzzers/corpora/commit_graph/0dd0770c34fcf6b1f13219450190616d344db021 +0 -0
  399. package/vendor/libgit2/fuzzers/corpora/commit_graph/0e2b2e6a32733b8a625bc7e812e2ea508d69a5e4 +0 -0
  400. package/vendor/libgit2/fuzzers/corpora/commit_graph/0e8d0bd07c543d708aecaca377106492b7a74fa3 +0 -0
  401. package/vendor/libgit2/fuzzers/corpora/commit_graph/0f0d16e1b8c8671dbe1074115c1d86aa9b359e7e +0 -0
  402. package/vendor/libgit2/fuzzers/corpora/commit_graph/102ef78036de5a30927e7f751377b05441c41a08 +0 -0
  403. package/vendor/libgit2/fuzzers/corpora/commit_graph/10494e7cc9cb8dff289c431d7560bcee0d1b14ed +0 -0
  404. package/vendor/libgit2/fuzzers/corpora/commit_graph/107b11d86381345f50aa19b8485477a870ff399f +0 -0
  405. package/vendor/libgit2/fuzzers/corpora/commit_graph/10bb37e18fb3c0897dabacf9c464b4d324007dc3 +0 -0
  406. package/vendor/libgit2/fuzzers/corpora/commit_graph/10ee715f64b08549c3e8261204276694728eb841 +0 -0
  407. package/vendor/libgit2/fuzzers/corpora/commit_graph/123e4eeb7a731f48d06e336b4d29af717f8b6550 +0 -0
  408. package/vendor/libgit2/fuzzers/corpora/commit_graph/125a228afb923970e0a6d4412f7257ba998594a1 +0 -0
  409. package/vendor/libgit2/fuzzers/corpora/commit_graph/130d96c16fba06dcbe7e2a661ab959a3274a4bd9 +0 -0
  410. package/vendor/libgit2/fuzzers/corpora/commit_graph/131c5a2fec55cb0d63f7dc055d6fad5f3dc3c974 +0 -0
  411. package/vendor/libgit2/fuzzers/corpora/commit_graph/13e562d61acb3aa36260a819a00b07ff16450335 +0 -0
  412. package/vendor/libgit2/fuzzers/corpora/commit_graph/1414e6e8ab6bad1b5c51fed807c514a9d6575e66 +0 -0
  413. package/vendor/libgit2/fuzzers/corpora/commit_graph/1432d191846ae2d0e381813efcfacff2f1dba0e4 +0 -0
  414. package/vendor/libgit2/fuzzers/corpora/commit_graph/14a84cdc6f8d432be4cd3d3eafce92ae385e472f +0 -0
  415. package/vendor/libgit2/fuzzers/corpora/commit_graph/14e3e735dba88791f2cadd6e0dc5d662a104a6d7 +0 -0
  416. package/vendor/libgit2/fuzzers/corpora/commit_graph/1574abb020203103ea629d677edd21c967fc0f4c +0 -0
  417. package/vendor/libgit2/fuzzers/corpora/commit_graph/169cc492ba94948a6206765436881a1a0c601780 +0 -0
  418. package/vendor/libgit2/fuzzers/corpora/commit_graph/16a2130c1d75129f3bae3bf8f2c2de41fb3533c0 +0 -0
  419. package/vendor/libgit2/fuzzers/corpora/commit_graph/16ba602eadfc9a3f74c0845394eda0de42b61571 +0 -0
  420. package/vendor/libgit2/fuzzers/corpora/commit_graph/17555fb2dfc444d171ba686667d72e388bd6c041 +0 -0
  421. package/vendor/libgit2/fuzzers/corpora/commit_graph/1a10450d99c1e53d9b7f97b8014cb7fc01906ef2 +0 -0
  422. package/vendor/libgit2/fuzzers/corpora/commit_graph/1af670b5515231fc04b2be9038ee30a7e066b09b +0 -0
  423. package/vendor/libgit2/fuzzers/corpora/commit_graph/1b72cfa68259e3f3b3802906902a0a29368f86b5 +0 -0
  424. package/vendor/libgit2/fuzzers/corpora/commit_graph/1c62ac5d632aa9e449a4335b675941107d8825ae +0 -0
  425. package/vendor/libgit2/fuzzers/corpora/commit_graph/1d95b5db2f802011b33d10212a66fbe40827dfd4 +0 -0
  426. package/vendor/libgit2/fuzzers/corpora/commit_graph/1e068537ce1211a325aab42ae1263a109131c9f9 +0 -0
  427. package/vendor/libgit2/fuzzers/corpora/commit_graph/1e9c882c9d33304a5791ef6c98eee65e142bd7fd +0 -0
  428. package/vendor/libgit2/fuzzers/corpora/commit_graph/1f54935df929403a29e77591c97f767d94871aea +0 -0
  429. package/vendor/libgit2/fuzzers/corpora/commit_graph/206015659641771bb0d668728c2fdc4209e65dda +0 -0
  430. package/vendor/libgit2/fuzzers/corpora/commit_graph/2096493a2bcc2d15b7ae5bf3112fe49c39976ad8 +0 -0
  431. package/vendor/libgit2/fuzzers/corpora/commit_graph/209b74e08abe8c787b7c5ba81e51cb69c57ecded +0 -0
  432. package/vendor/libgit2/fuzzers/corpora/commit_graph/21137876575fbca357fc0c96db1de73c6737e1ae +0 -0
  433. package/vendor/libgit2/fuzzers/corpora/commit_graph/2143d9db9802f076c72a71184cd9d0cb4581e9e7 +0 -0
  434. package/vendor/libgit2/fuzzers/corpora/commit_graph/21a52a5282145407d951ac73c2ff27876783899d +0 -0
  435. package/vendor/libgit2/fuzzers/corpora/commit_graph/21d5c8c8ac3a09bcba5388c472df32795986a5cb +1 -0
  436. package/vendor/libgit2/fuzzers/corpora/commit_graph/22170d1110a1c18009b7feb21a470681f55e85fb +0 -0
  437. package/vendor/libgit2/fuzzers/corpora/commit_graph/22f55dff94785f24252d7a070f713840f59b0870 +0 -0
  438. package/vendor/libgit2/fuzzers/corpora/commit_graph/23d10ee9694e1c66bedc7060990f19a2ac3eaee3 +0 -0
  439. package/vendor/libgit2/fuzzers/corpora/commit_graph/2435430ca19502c3b0ec4987508d4a8fbdbc898c +0 -0
  440. package/vendor/libgit2/fuzzers/corpora/commit_graph/244d2ea0c5c3117000b599cfab37680ba8f04513 +0 -0
  441. package/vendor/libgit2/fuzzers/corpora/commit_graph/248bf94143d150da2459cfdca099c30c6daff00a +0 -0
  442. package/vendor/libgit2/fuzzers/corpora/commit_graph/25bc53498129bb3717671f00c355d2637a91c86a +0 -0
  443. package/vendor/libgit2/fuzzers/corpora/commit_graph/2614f60da2d7e291501397238366d27513bff773 +0 -0
  444. package/vendor/libgit2/fuzzers/corpora/commit_graph/2651b3d5a8b4616b1faa81dabe27ab2712a27561 +0 -0
  445. package/vendor/libgit2/fuzzers/corpora/commit_graph/270257a2872b33dd13c4fd466cbc1ae67d613f9b +0 -0
  446. package/vendor/libgit2/fuzzers/corpora/commit_graph/2830c6244c74656f6c5649c8226953905a582a38 +0 -0
  447. package/vendor/libgit2/fuzzers/corpora/commit_graph/2889a85c07c20551ff0b97fc640e3c91b33aa4a1 +0 -0
  448. package/vendor/libgit2/fuzzers/corpora/commit_graph/295ce43fdd56def8948d1ba2bfa7fdf0c47b5318 +0 -0
  449. package/vendor/libgit2/fuzzers/corpora/commit_graph/296cbb94c4e68ab86972a174405308ee34d0c40f +0 -0
  450. package/vendor/libgit2/fuzzers/corpora/commit_graph/2975adf222cad108ec90d8225fd655e30e3bf253 +0 -0
  451. package/vendor/libgit2/fuzzers/corpora/commit_graph/29f5d27760c9254ab4db661a6cd0323dd11c34ca +0 -0
  452. package/vendor/libgit2/fuzzers/corpora/commit_graph/2a359fb09eaad968e57d353453908027645873d1 +0 -0
  453. package/vendor/libgit2/fuzzers/corpora/commit_graph/2a6b65a8d6c28febaa081d220a4433f8366d02bc +0 -0
  454. package/vendor/libgit2/fuzzers/corpora/commit_graph/2b14dcade4d0919b0a17830fe353738015f492a6 +0 -0
  455. package/vendor/libgit2/fuzzers/corpora/commit_graph/2b298a13abbd9829e965424a1486baa13d4166c4 +0 -0
  456. package/vendor/libgit2/fuzzers/corpora/commit_graph/2b44d8cd8e70e25172b4c740ebe38ef411c965b3 +0 -0
  457. package/vendor/libgit2/fuzzers/corpora/commit_graph/2b590c4e61fdfcf21c017b29440747a1894b1534 +0 -0
  458. package/vendor/libgit2/fuzzers/corpora/commit_graph/2becb18a971ae30e1a8f6680982fd7305708caa0 +0 -0
  459. package/vendor/libgit2/fuzzers/corpora/commit_graph/2bf78b02099a1fe4ce50d065254e843ca55e280f +0 -0
  460. package/vendor/libgit2/fuzzers/corpora/commit_graph/2c1541ecd01aa7b9e99bccfe9804198b3e79f118 +0 -0
  461. package/vendor/libgit2/fuzzers/corpora/commit_graph/2c6798057af5894c27631ff63e845fe1e4bdc9ee +0 -0
  462. package/vendor/libgit2/fuzzers/corpora/commit_graph/2cf7eb7fe489e5acd64df755e820c871784c2ba1 +0 -0
  463. package/vendor/libgit2/fuzzers/corpora/commit_graph/2d49ba35ca404baa0d593925f36a81ce53943c8d +0 -0
  464. package/vendor/libgit2/fuzzers/corpora/commit_graph/2d507d42ca43ffc2f3c8892826e1db74144ec096 +0 -0
  465. package/vendor/libgit2/fuzzers/corpora/commit_graph/2e4da693e3e336d2b1a40311a7ccf94def035b6b +0 -0
  466. package/vendor/libgit2/fuzzers/corpora/commit_graph/2e71ff86128b5618f0f067c407a76ff645ae2019 +0 -0
  467. package/vendor/libgit2/fuzzers/corpora/commit_graph/2eb777c6d7e6ee9bd7a44e37372595043aad596b +0 -0
  468. package/vendor/libgit2/fuzzers/corpora/commit_graph/2ec3ebffba165b9dd49e755a9e77e23aed796628 +0 -0
  469. package/vendor/libgit2/fuzzers/corpora/commit_graph/302703e3b0d74219868aca39ee7593944c0b2400 +0 -0
  470. package/vendor/libgit2/fuzzers/corpora/commit_graph/3048c6908dc3176707fa8bcb0196824e3358357a +0 -0
  471. package/vendor/libgit2/fuzzers/corpora/commit_graph/30616cb39d3ad6060324fada03709d611ad28d5c +0 -0
  472. package/vendor/libgit2/fuzzers/corpora/commit_graph/306beadd9b3135a00037323760eb5377c88a403e +0 -0
  473. package/vendor/libgit2/fuzzers/corpora/commit_graph/31464a6fbad023923a7e4700fc11564e811bcbd2 +0 -0
  474. package/vendor/libgit2/fuzzers/corpora/commit_graph/317f4bcfecf066961ef1982d551cd14e63c9f008 +0 -0
  475. package/vendor/libgit2/fuzzers/corpora/commit_graph/31b2248faaabbec69a06098c8cb0f69c5d0aa208 +0 -0
  476. package/vendor/libgit2/fuzzers/corpora/commit_graph/31d1c3d1147385d58dbe6f82898a5523320fbcac +0 -0
  477. package/vendor/libgit2/fuzzers/corpora/commit_graph/32c9bc1616a78a230a3724abc02150db1cc40aa0 +0 -0
  478. package/vendor/libgit2/fuzzers/corpora/commit_graph/331e2866416b091252f0299e98d32cfb29237029 +0 -0
  479. package/vendor/libgit2/fuzzers/corpora/commit_graph/331eb3876dd2f3f0bd51f380ac431d86d6e3bb5e +0 -0
  480. package/vendor/libgit2/fuzzers/corpora/commit_graph/346bd6eaeadeafcb840ff9441614b309330db63e +0 -0
  481. package/vendor/libgit2/fuzzers/corpora/commit_graph/349931f447981f21476481448576e805c093a25b +0 -0
  482. package/vendor/libgit2/fuzzers/corpora/commit_graph/34a2da1e9adaac1b4be1d40b1ece81fe00643d49 +0 -0
  483. package/vendor/libgit2/fuzzers/corpora/commit_graph/34bb8f475e7384a8a39618fd15fdc5fb1b12c1a1 +0 -0
  484. package/vendor/libgit2/fuzzers/corpora/commit_graph/351a036c6eb95db9364706b861f7e75ad26194e8 +0 -0
  485. package/vendor/libgit2/fuzzers/corpora/commit_graph/355452c1da8e7689d816d67cdde040b5df7eabd7 +0 -0
  486. package/vendor/libgit2/fuzzers/corpora/commit_graph/35c157ad2b100b4f334cddcf3dea6ef2d85462be +0 -0
  487. package/vendor/libgit2/fuzzers/corpora/commit_graph/36a81a45eabfcf53e1ae0361aa234791e2fdb750 +0 -0
  488. package/vendor/libgit2/fuzzers/corpora/commit_graph/36ee20f6dbeb3a34e91eafbbe2e379f9ac6cfa43 +0 -0
  489. package/vendor/libgit2/fuzzers/corpora/commit_graph/377627c19bcac6adc880202048a9eac07b5417d4 +0 -0
  490. package/vendor/libgit2/fuzzers/corpora/commit_graph/38747e7c8bec2f9c923739d50ba54ff88ba6503f +0 -0
  491. package/vendor/libgit2/fuzzers/corpora/commit_graph/3945843a6fab2ec71030f09b237c125b97cd3ea5 +0 -0
  492. package/vendor/libgit2/fuzzers/corpora/commit_graph/396321d39b82ffaccbc64115117df7e822b0f515 +0 -0
  493. package/vendor/libgit2/fuzzers/corpora/commit_graph/396e78eb9b54e2cefb52cd76a22137c8abd6cbcf +0 -0
  494. package/vendor/libgit2/fuzzers/corpora/commit_graph/39c1ab66035adc104cd06a6d98b77668172d21af +0 -0
  495. package/vendor/libgit2/fuzzers/corpora/commit_graph/3a1078c35f5401ce09b5ba921fc348dde37530bb +0 -0
  496. package/vendor/libgit2/fuzzers/corpora/commit_graph/3aa3d8f40392d1c863d23799b8ec0aedc7191302 +0 -0
  497. package/vendor/libgit2/fuzzers/corpora/commit_graph/3b08c505601271cb92345ec7f0ff0b28daf90a9c +0 -0
  498. package/vendor/libgit2/fuzzers/corpora/commit_graph/3b41702587be45f678b36823ad2f7e5002337dc4 +0 -0
  499. package/vendor/libgit2/fuzzers/corpora/commit_graph/3b69108cc919aba0248f9b864d4e71c5f6d1931e +0 -0
  500. package/vendor/libgit2/fuzzers/corpora/commit_graph/3b90507501bb3bcfe0094f9c92cc2869f1a7dda5 +0 -0
  501. package/vendor/libgit2/fuzzers/corpora/commit_graph/3bc7fe44c3a1464dd35a4d22b482f46cdeda0405 +0 -0
  502. package/vendor/libgit2/fuzzers/corpora/commit_graph/3ce99994986efb6df3f3568423e0077b53c7ef78 +0 -0
  503. package/vendor/libgit2/fuzzers/corpora/commit_graph/3d6cb3ba21181c9f0ab08b2608eab773f36773f2 +0 -0
  504. package/vendor/libgit2/fuzzers/corpora/commit_graph/3d8ec41450b943d5dea73fb1e393960b03d7c3b9 +0 -0
  505. package/vendor/libgit2/fuzzers/corpora/commit_graph/3e29e8baaac0f6c7e4cf3d5adca2ab3a2c491ac7 +0 -0
  506. package/vendor/libgit2/fuzzers/corpora/commit_graph/3e9469b3c68ba334671aacda7a7669b0e97b74d6 +0 -0
  507. package/vendor/libgit2/fuzzers/corpora/commit_graph/3eeda3bfa7abef69911c94520c009a08c49b9942 +0 -0
  508. package/vendor/libgit2/fuzzers/corpora/commit_graph/3f0f5021016451b57f673d0603cd9e4830c2198d +0 -0
  509. package/vendor/libgit2/fuzzers/corpora/commit_graph/3f46540fbd94bf0337c1d0d7437ec992a3568f09 +0 -0
  510. package/vendor/libgit2/fuzzers/corpora/commit_graph/402d9c25d5833d42630882ab5c57833266bef785 +0 -0
  511. package/vendor/libgit2/fuzzers/corpora/commit_graph/4048bb3c26d67c345630ff9e86db551a3add6549 +0 -0
  512. package/vendor/libgit2/fuzzers/corpora/commit_graph/40792f23c1281842dab671e8b213fc408d1ec39f +0 -0
  513. package/vendor/libgit2/fuzzers/corpora/commit_graph/41cd0b5d9a9540947b7b1841a55e4c11bd4346a2 +0 -0
  514. package/vendor/libgit2/fuzzers/corpora/commit_graph/41d86e5ea3df4a0de60d42aeb16e2a5599aedeae +0 -0
  515. package/vendor/libgit2/fuzzers/corpora/commit_graph/42b4e5430b2b1b17a361067fb9dd33ab74e52232 +0 -0
  516. package/vendor/libgit2/fuzzers/corpora/commit_graph/42ef1c9d234b90acaf1651d930fc52d5f8f158f2 +0 -0
  517. package/vendor/libgit2/fuzzers/corpora/commit_graph/4570c8ff26d7f31afe73b3d9a35a29bc1274d68a +0 -0
  518. package/vendor/libgit2/fuzzers/corpora/commit_graph/45cf4751a5929930a7c30ec10134434b9ee13c3d +0 -0
  519. package/vendor/libgit2/fuzzers/corpora/commit_graph/46e9d351dd5bb71f7d4d8f15b3fad312c781452e +0 -0
  520. package/vendor/libgit2/fuzzers/corpora/commit_graph/472421633b984556b96bc20f1fcf7a98c25736f3 +0 -0
  521. package/vendor/libgit2/fuzzers/corpora/commit_graph/47f35b91699caee098cacdde0161ffab21bdfc57 +0 -0
  522. package/vendor/libgit2/fuzzers/corpora/commit_graph/48b9da327218f9409287687a43b7eead4789a588 +0 -0
  523. package/vendor/libgit2/fuzzers/corpora/commit_graph/48d14fca326d5d591d18d34c2821a457277819a2 +0 -0
  524. package/vendor/libgit2/fuzzers/corpora/commit_graph/48f3a33e2a027f5735d0a333ec4acd5a2aa57118 +0 -0
  525. package/vendor/libgit2/fuzzers/corpora/commit_graph/49e0eee24eab094a9c62f6b37b6ba01f8aece4e4 +0 -0
  526. package/vendor/libgit2/fuzzers/corpora/commit_graph/4b45bcb707d2a0bc23b415e9bc3d7eb1f7f0e188 +0 -0
  527. package/vendor/libgit2/fuzzers/corpora/commit_graph/4c428300fe4866fe81cff02ad4bc14b6848f7f73 +0 -0
  528. package/vendor/libgit2/fuzzers/corpora/commit_graph/4d69c567df2e858c5f248b3fc8e4a9c04f02481c +0 -0
  529. package/vendor/libgit2/fuzzers/corpora/commit_graph/4d88b6c9b513d5db2e07313a39b43d112d3d4562 +0 -0
  530. package/vendor/libgit2/fuzzers/corpora/commit_graph/4da73370cf854ef8bd08c7f79b92a187cdbff278 +0 -0
  531. package/vendor/libgit2/fuzzers/corpora/commit_graph/4e4b2827351bbfd414b718052a8f950a9e3eb7ee +0 -0
  532. package/vendor/libgit2/fuzzers/corpora/commit_graph/4ed43f7d3c0305461edcbc86f62e0c6ad56df01e +0 -0
  533. package/vendor/libgit2/fuzzers/corpora/commit_graph/4f011529809e88205421fa8ce39dcc025293bcb8 +0 -0
  534. package/vendor/libgit2/fuzzers/corpora/commit_graph/4f1928b6376369ab6acf8a282284366cc3bf71ef +0 -0
  535. package/vendor/libgit2/fuzzers/corpora/commit_graph/4f669eca3416c44f0d003ef2720d03e697e2230e +0 -0
  536. package/vendor/libgit2/fuzzers/corpora/commit_graph/4f750f24ecb5080bea2845061cfd3ce4529d30ee +0 -0
  537. package/vendor/libgit2/fuzzers/corpora/commit_graph/4fab9bb2bacf562e65f4a8681c429e6ea92aaed7 +0 -0
  538. package/vendor/libgit2/fuzzers/corpora/commit_graph/4fd757c7251c17413b3005fb38aee0fd029d89ec +0 -0
  539. package/vendor/libgit2/fuzzers/corpora/commit_graph/506092de91dcf93254cdd5ad9e02a953a38099ea +0 -0
  540. package/vendor/libgit2/fuzzers/corpora/commit_graph/50e934fb52d9bc5cd2a531adced1cad7f102a112 +0 -0
  541. package/vendor/libgit2/fuzzers/corpora/commit_graph/512e49a9e789656964988950009e6534907e6317 +0 -0
  542. package/vendor/libgit2/fuzzers/corpora/commit_graph/51404149f1ea30ee6959fafe81a52acabed97e9e +0 -0
  543. package/vendor/libgit2/fuzzers/corpora/commit_graph/5150f8a67399ee16178a2b08198cf91a90c0e53e +0 -0
  544. package/vendor/libgit2/fuzzers/corpora/commit_graph/51a1fd23dfe5a8062cd4601d235509247f3bc2dc +0 -0
  545. package/vendor/libgit2/fuzzers/corpora/commit_graph/51a963486f041a60c422f0dd6da3b69c52f12fb7 +0 -0
  546. package/vendor/libgit2/fuzzers/corpora/commit_graph/51fbf57a2a35ec33164838fa254fe605a3c868e9 +0 -0
  547. package/vendor/libgit2/fuzzers/corpora/commit_graph/53068b9f9cb54bb52d076e9602ccd55f169ef39a +0 -0
  548. package/vendor/libgit2/fuzzers/corpora/commit_graph/5314619e15fa5ee67df44481b8213a53786d39c5 +0 -0
  549. package/vendor/libgit2/fuzzers/corpora/commit_graph/533f5f00275968129846522fe01e2819746272eb +0 -0
  550. package/vendor/libgit2/fuzzers/corpora/commit_graph/53a62799135c282435a17e032deda03eaf9daf0f +0 -0
  551. package/vendor/libgit2/fuzzers/corpora/commit_graph/53c9d5cd849977e523d92dd2d639e9b0e721be50 +0 -0
  552. package/vendor/libgit2/fuzzers/corpora/commit_graph/54767a0bb3b96d39f5b2004ce3f274465f1a927e +0 -0
  553. package/vendor/libgit2/fuzzers/corpora/commit_graph/548de37dbe6a3829b73d976996ec9838cf608554 +0 -0
  554. package/vendor/libgit2/fuzzers/corpora/commit_graph/5522cefa54b798ea4aba8ef2a42ad248a7fb02ee +0 -0
  555. package/vendor/libgit2/fuzzers/corpora/commit_graph/554fab3eef5d8709f06d1d4319efe5c0c437421b +0 -0
  556. package/vendor/libgit2/fuzzers/corpora/commit_graph/567fe73919dae39b0bcb78b03d655643a71714a8 +0 -0
  557. package/vendor/libgit2/fuzzers/corpora/commit_graph/5717a281aa722ee4a32dfa1cc72fc5d6081f6755 +0 -0
  558. package/vendor/libgit2/fuzzers/corpora/commit_graph/577d814e0be43df9321c5b27119c398bd00a00c5 +0 -0
  559. package/vendor/libgit2/fuzzers/corpora/commit_graph/58680611707c6188f9f067f8747b699cd2fe82d3 +0 -0
  560. package/vendor/libgit2/fuzzers/corpora/commit_graph/5915b7f91dd43ec37a4718061c90cbec2686b916 +0 -0
  561. package/vendor/libgit2/fuzzers/corpora/commit_graph/599516e368ff621dd06d8450837350f4e9558c38 +0 -0
  562. package/vendor/libgit2/fuzzers/corpora/commit_graph/5a2d01d141e4d523e718c30e20cb07c3ad98f33d +0 -0
  563. package/vendor/libgit2/fuzzers/corpora/commit_graph/5a9803ef8cd88d1e8f1d6e5920b8afd170cafb11 +0 -0
  564. package/vendor/libgit2/fuzzers/corpora/commit_graph/5ba93c9db0cff93f52b521d7420e43f6eda2784f +0 -0
  565. package/vendor/libgit2/fuzzers/corpora/commit_graph/5bf0ca772092e6fa34b6822f61a1b1c3d7f2c6e3 +0 -0
  566. package/vendor/libgit2/fuzzers/corpora/commit_graph/5cfbfb3e12b629dc9f74baf0a8741345ec288795 +0 -0
  567. package/vendor/libgit2/fuzzers/corpora/commit_graph/5d8cc97b739c39820b761b6551d34dd647da6816 +0 -0
  568. package/vendor/libgit2/fuzzers/corpora/commit_graph/5dcbb3e1c2fc9a191dd3f3443b86f6bc38c39e37 +0 -0
  569. package/vendor/libgit2/fuzzers/corpora/commit_graph/5ec17d081aef9872f746e88ad8b03553719f9c36 +0 -0
  570. package/vendor/libgit2/fuzzers/corpora/commit_graph/5f88e3ba60c11be25c47a842763d8870d23cc7f2 +0 -0
  571. package/vendor/libgit2/fuzzers/corpora/commit_graph/6045e4d2bf85013c78a32e71b014ba3d4a4b7c61 +0 -0
  572. package/vendor/libgit2/fuzzers/corpora/commit_graph/615c7ba7ffbce955ffd964682e2a0f7ef3c767e4 +0 -0
  573. package/vendor/libgit2/fuzzers/corpora/commit_graph/6189f29cbbe88ac6cb32fdefecda1bd6194332a6 +0 -0
  574. package/vendor/libgit2/fuzzers/corpora/commit_graph/627224cb8484c62992dcbc4cdebdbfa48a3c021a +0 -0
  575. package/vendor/libgit2/fuzzers/corpora/commit_graph/629fff0962d298a7283a3d1e1d1b940dfef9b315 +0 -0
  576. package/vendor/libgit2/fuzzers/corpora/commit_graph/6322594cff2a99d0abb1139e6a43b06df76d539a +0 -0
  577. package/vendor/libgit2/fuzzers/corpora/commit_graph/63de5e8e042222d53bf05640c87da376aefb76cc +0 -0
  578. package/vendor/libgit2/fuzzers/corpora/commit_graph/647dbb1d05fe0fab685bfe126bd9ac3a12b6bccf +0 -0
  579. package/vendor/libgit2/fuzzers/corpora/commit_graph/647e5e265d8d1079784fc2a3da25f7ba58126acd +0 -0
  580. package/vendor/libgit2/fuzzers/corpora/commit_graph/653bd480dfd1e5f4bdca702aba3dfd8da0c204b7 +0 -0
  581. package/vendor/libgit2/fuzzers/corpora/commit_graph/65485740a465377213c80fa68028727f281299fb +0 -0
  582. package/vendor/libgit2/fuzzers/corpora/commit_graph/6551f8c8c3028006d0cc4997943df8a86ee3f598 +0 -0
  583. package/vendor/libgit2/fuzzers/corpora/commit_graph/67799e79d33883510f85ae9705ab3932862128a2 +0 -0
  584. package/vendor/libgit2/fuzzers/corpora/commit_graph/67b475481e5a21351b49789874adbc988aefd64c +0 -0
  585. package/vendor/libgit2/fuzzers/corpora/commit_graph/67e5a649967dee002d1c181e079748c404e29767 +0 -0
  586. package/vendor/libgit2/fuzzers/corpora/commit_graph/687424a4a31a66a78d1637c680c9c10746741007 +0 -0
  587. package/vendor/libgit2/fuzzers/corpora/commit_graph/68fa6dd52832657cb8dd7e1485d6fbafd4e93903 +0 -0
  588. package/vendor/libgit2/fuzzers/corpora/commit_graph/691696af1c042115f4d9f9b8e24f7b8c06ed189b +0 -0
  589. package/vendor/libgit2/fuzzers/corpora/commit_graph/6a80152f9b1afa3a3080bf3f6aa48e84c2e18497 +0 -0
  590. package/vendor/libgit2/fuzzers/corpora/commit_graph/6af27e4cf4c7bcce128a5949ee27fc73ab2cc71e +0 -0
  591. package/vendor/libgit2/fuzzers/corpora/commit_graph/6afd8f82d5639b774de0dfd418ae85322f4168dd +0 -0
  592. package/vendor/libgit2/fuzzers/corpora/commit_graph/6c64a9e26e0e1480bb5e60b7044ca6ce17104a80 +0 -0
  593. package/vendor/libgit2/fuzzers/corpora/commit_graph/6c850c17db130ca0152f7c75562fa191f7ef89de +0 -0
  594. package/vendor/libgit2/fuzzers/corpora/commit_graph/6c9afe4527371a2baf33c5e220e4ca21a3207f94 +0 -0
  595. package/vendor/libgit2/fuzzers/corpora/commit_graph/6ce3d40b0225923a7f4123a919b1c5d70841fad7 +0 -0
  596. package/vendor/libgit2/fuzzers/corpora/commit_graph/6cfd064aa6197813eb18f38df967ae4cdba9c6da +0 -0
  597. package/vendor/libgit2/fuzzers/corpora/commit_graph/6e6675676c53bcddc870e06605d2432e3429f224 +0 -0
  598. package/vendor/libgit2/fuzzers/corpora/commit_graph/6e6e82579b7abae2b43d90448d3f2ead4dfcba78 +0 -0
  599. package/vendor/libgit2/fuzzers/corpora/commit_graph/6f13d23c75a562eddefafe85e208e602832294e2 +0 -0
  600. package/vendor/libgit2/fuzzers/corpora/commit_graph/6fed59b0472927f5d2396d0ee4d7fd13579377ce +0 -0
  601. package/vendor/libgit2/fuzzers/corpora/commit_graph/71f7724196f9f8fcfe3ee0161a84893bb9c4ab11 +0 -0
  602. package/vendor/libgit2/fuzzers/corpora/commit_graph/7335ecb1d41e713bf3909adf5802b90e22bc1581 +0 -0
  603. package/vendor/libgit2/fuzzers/corpora/commit_graph/73afaa73175f461e1d19d5138e055c1649926dfe +0 -0
  604. package/vendor/libgit2/fuzzers/corpora/commit_graph/73e2fcb45c4df90d19091056b235e7a317631a62 +0 -0
  605. package/vendor/libgit2/fuzzers/corpora/commit_graph/741cb2d5ae11b0a9e0608b58ec7284d75129a1f2 +0 -0
  606. package/vendor/libgit2/fuzzers/corpora/commit_graph/7431bb0097a9bb52e1ceaaa8674a13cd3486a387 +0 -0
  607. package/vendor/libgit2/fuzzers/corpora/commit_graph/7455b805995d0c96ac12f8a1c1264caaffcfac1c +0 -0
  608. package/vendor/libgit2/fuzzers/corpora/commit_graph/74e39b8a82fc06f9ed8f83ea30545ddf6df66811 +0 -0
  609. package/vendor/libgit2/fuzzers/corpora/commit_graph/75d51e413d3e916560dc0c2ee5092d2f4972aec1 +0 -0
  610. package/vendor/libgit2/fuzzers/corpora/commit_graph/75e068964ea6beb7310a154d763de74a70071f48 +0 -0
  611. package/vendor/libgit2/fuzzers/corpora/commit_graph/763bf498dd847bd2b4af7b611199619bd428bea6 +0 -0
  612. package/vendor/libgit2/fuzzers/corpora/commit_graph/77064ae04581a3c6d2a77158ef1a0b1e60db414a +0 -0
  613. package/vendor/libgit2/fuzzers/corpora/commit_graph/783bb14d68021061f592601607f40fe232ad17c4 +0 -0
  614. package/vendor/libgit2/fuzzers/corpora/commit_graph/7862814cb684310b54ef920b35403515efaba13c +0 -0
  615. package/vendor/libgit2/fuzzers/corpora/commit_graph/791fd85b6ffb2429e9fa5ba29eebdce214ad88c7 +0 -0
  616. package/vendor/libgit2/fuzzers/corpora/commit_graph/79396d4f6142a53e26e14aa6ccb4afb4fd8fc580 +0 -0
  617. package/vendor/libgit2/fuzzers/corpora/commit_graph/79661b8e529e2182d5c612faba9f26e32a122b78 +0 -0
  618. package/vendor/libgit2/fuzzers/corpora/commit_graph/7969143acb3334bffac46c6dfd96362c81644191 +0 -0
  619. package/vendor/libgit2/fuzzers/corpora/commit_graph/79d84866dc8c067508c02516b65c0e48cf689b56 +0 -0
  620. package/vendor/libgit2/fuzzers/corpora/commit_graph/7b61f8f4a96e309bbe64ed82637fc81492a9652f +0 -0
  621. package/vendor/libgit2/fuzzers/corpora/commit_graph/7b8123f973edfb0f3cab027c0cd6b8efc7b11d6b +0 -0
  622. package/vendor/libgit2/fuzzers/corpora/commit_graph/7b8dd3093efba07f7a4d3bab4b90b8f6e4f28bfb +0 -0
  623. package/vendor/libgit2/fuzzers/corpora/commit_graph/7cc771aab0f3be7730881a46d952ae0a06958201 +0 -0
  624. package/vendor/libgit2/fuzzers/corpora/commit_graph/7d177f4207de78d50df2493a3bc07f2cd578b363 +0 -0
  625. package/vendor/libgit2/fuzzers/corpora/commit_graph/7d2df075f3e73ea9809c31586c37ece0f568b7fa +0 -0
  626. package/vendor/libgit2/fuzzers/corpora/commit_graph/7d386e68e4c733a1fb11c0117f379fb4b9955fbb +1 -0
  627. package/vendor/libgit2/fuzzers/corpora/commit_graph/7e4260830352479d29310bd6e1022e19a68ffe76 +0 -0
  628. package/vendor/libgit2/fuzzers/corpora/commit_graph/7e4dfdae52be18cf95555c2eb1f54af7f69c6dde +0 -0
  629. package/vendor/libgit2/fuzzers/corpora/commit_graph/7eafedf7e7f20e86ecdf9ba51febf8492bdbc1f1 +0 -0
  630. package/vendor/libgit2/fuzzers/corpora/commit_graph/7ef1829a378d66b1dd70a767729127a0dc5edcae +0 -0
  631. package/vendor/libgit2/fuzzers/corpora/commit_graph/80b7d2b9d7e8c8fd7ae239b8d307b592f97ee000 +0 -0
  632. package/vendor/libgit2/fuzzers/corpora/commit_graph/810f577ff5c1af7807a26226af912687558158cd +0 -0
  633. package/vendor/libgit2/fuzzers/corpora/commit_graph/81603f1fe8d8e29005418d0fc9a9b33972366038 +0 -0
  634. package/vendor/libgit2/fuzzers/corpora/commit_graph/81c8b4d6884f954935fa4a8e828c4637db04b61a +0 -0
  635. package/vendor/libgit2/fuzzers/corpora/commit_graph/8226846e9b092561f85cc2956ab89d8cc1ae61e0 +0 -0
  636. package/vendor/libgit2/fuzzers/corpora/commit_graph/825cfceea434e2392cce161356e3cb5f81ec2b3a +0 -0
  637. package/vendor/libgit2/fuzzers/corpora/commit_graph/82603febce83d95adf68b85cabf15d43ca0c4ee9 +0 -0
  638. package/vendor/libgit2/fuzzers/corpora/commit_graph/827f0826cc4156e19b4c4938bec74e38de62fe9c +0 -0
  639. package/vendor/libgit2/fuzzers/corpora/commit_graph/8486397ff8d1156249676c19b419a7758ff53f9a +0 -0
  640. package/vendor/libgit2/fuzzers/corpora/commit_graph/84d99ee359bec1b8ee0f59e9bd96f1da062030b7 +0 -0
  641. package/vendor/libgit2/fuzzers/corpora/commit_graph/84e629bc7416039f1feb81fa9168d7c1ee3141c2 +0 -0
  642. package/vendor/libgit2/fuzzers/corpora/commit_graph/84e885752179076fb38739ca7bc4345716bee56a +0 -0
  643. package/vendor/libgit2/fuzzers/corpora/commit_graph/859ef05494c8070057810b5c20df00fc81f81cf5 +0 -0
  644. package/vendor/libgit2/fuzzers/corpora/commit_graph/859fe592f33abc1d959c0e73ecd6cd4bffe23a97 +0 -0
  645. package/vendor/libgit2/fuzzers/corpora/commit_graph/860da5e8a468805b76a44b9ac99b4575be16ea15 +0 -0
  646. package/vendor/libgit2/fuzzers/corpora/commit_graph/865e415745cead02a826f058a5ee49099bdf9562 +0 -0
  647. package/vendor/libgit2/fuzzers/corpora/commit_graph/878bfce051a9c7462847d4e99b7e926dc821b7b8 +0 -0
  648. package/vendor/libgit2/fuzzers/corpora/commit_graph/880492e4dc7259577c227bb4f075d7165e875c29 +0 -0
  649. package/vendor/libgit2/fuzzers/corpora/commit_graph/88b7de1bd1c96454a1350286d115c0ee368511f9 +0 -0
  650. package/vendor/libgit2/fuzzers/corpora/commit_graph/896268e4a5775b7ce33923ac6daeb0810420c55b +0 -0
  651. package/vendor/libgit2/fuzzers/corpora/commit_graph/8978f8da89f9652878edabad164f5513ef508f27 +0 -0
  652. package/vendor/libgit2/fuzzers/corpora/commit_graph/89a6525b7db0e6ec211a484efd2880abef928d4e +0 -0
  653. package/vendor/libgit2/fuzzers/corpora/commit_graph/8ae86cba2bba6664fc5eb97be8e9777b8825d823 +0 -0
  654. package/vendor/libgit2/fuzzers/corpora/commit_graph/8b845fbd2aa14e4f83c4dbc8b4b0b54d06482acd +0 -0
  655. package/vendor/libgit2/fuzzers/corpora/commit_graph/8c4121e6ce5956cfa408b980f16d276f456374dc +0 -0
  656. package/vendor/libgit2/fuzzers/corpora/commit_graph/8cb6a5b8ab41e3d27668d5735b5c09ff1f2eab65 +0 -0
  657. package/vendor/libgit2/fuzzers/corpora/commit_graph/8d80a70ffd362a89b88663e27f11e8ab69b70c1b +0 -0
  658. package/vendor/libgit2/fuzzers/corpora/commit_graph/8db603c1720b3680047f831f2ea9862567a7cdc4 +0 -0
  659. package/vendor/libgit2/fuzzers/corpora/commit_graph/8dd40b2d27c7dd4b986c35d87f826da287c09c4c +0 -0
  660. package/vendor/libgit2/fuzzers/corpora/commit_graph/8e9d6e6408e5f708a1924e8370e687e2c202a4c4 +0 -0
  661. package/vendor/libgit2/fuzzers/corpora/commit_graph/8f2dff1a30ee28e5985cb9379828aea5658d5849 +0 -0
  662. package/vendor/libgit2/fuzzers/corpora/commit_graph/8f7d18cdd6e605b85784ada14571fd5e5a184f2a +0 -0
  663. package/vendor/libgit2/fuzzers/corpora/commit_graph/903ae52f0ac9af8348038b12f9259741b0de42f1 +0 -0
  664. package/vendor/libgit2/fuzzers/corpora/commit_graph/9119e331f59e9337d419739c324f49d1bd62c8bf +0 -0
  665. package/vendor/libgit2/fuzzers/corpora/commit_graph/91d54d03b0917314ea1d67a70690df9247dd08d2 +0 -0
  666. package/vendor/libgit2/fuzzers/corpora/commit_graph/922da3b96725bfd0e3f6ce119f1e2249d53f9086 +0 -0
  667. package/vendor/libgit2/fuzzers/corpora/commit_graph/9277561e0524cccba2f851970b0d88ec4f4d3f5e +0 -0
  668. package/vendor/libgit2/fuzzers/corpora/commit_graph/92a4d571804026b7bbe957396185e079e756b894 +0 -0
  669. package/vendor/libgit2/fuzzers/corpora/commit_graph/931224cc80168fd362a360d99bab813ed7bbf8ce +0 -0
  670. package/vendor/libgit2/fuzzers/corpora/commit_graph/936ea5dad3bf023c552aa0bbeea8f7f66a11612c +0 -0
  671. package/vendor/libgit2/fuzzers/corpora/commit_graph/93aa4e0b1864933dce0abc0df69fe3d261f117f2 +0 -0
  672. package/vendor/libgit2/fuzzers/corpora/commit_graph/93d5b084965cf1b09085c4079a972e25207b3659 +0 -0
  673. package/vendor/libgit2/fuzzers/corpora/commit_graph/9443fd3468bcc0bc3ff8dfe765225f045ab43d0a +0 -0
  674. package/vendor/libgit2/fuzzers/corpora/commit_graph/9624c26cefb5804b7906147d262e81ee4000b6d6 +0 -0
  675. package/vendor/libgit2/fuzzers/corpora/commit_graph/9890933a73f39208627bd36e2fe88a6d54343a74 +0 -0
  676. package/vendor/libgit2/fuzzers/corpora/commit_graph/989dad0448e79af10040d5080f74eba2b8a401ba +0 -0
  677. package/vendor/libgit2/fuzzers/corpora/commit_graph/98ed4808b4a8da66a91fcea1be63be6371a7c7ac +0 -0
  678. package/vendor/libgit2/fuzzers/corpora/commit_graph/9928e516b85e22fbad58d562d3b7e814d9ce812d +0 -0
  679. package/vendor/libgit2/fuzzers/corpora/commit_graph/994c7cc5599252b5628d89cd0ba4b5574d32bf00 +0 -0
  680. package/vendor/libgit2/fuzzers/corpora/commit_graph/99c8557c2a02ea030de42869af42c1f7c77114db +0 -0
  681. package/vendor/libgit2/fuzzers/corpora/commit_graph/9a14c867272f102b84efdba73662d318c3e51cfe +0 -0
  682. package/vendor/libgit2/fuzzers/corpora/commit_graph/9a6f158c176d4a1982d541be2bc27a8afba4ea57 +0 -0
  683. package/vendor/libgit2/fuzzers/corpora/commit_graph/9aa4af603192823a2fdc53d95ed36896bc3309b2 +0 -0
  684. package/vendor/libgit2/fuzzers/corpora/commit_graph/9b40c2190123cec66af3b37212f6c567869efda3 +0 -0
  685. package/vendor/libgit2/fuzzers/corpora/commit_graph/9b6268c11d78c35db5164f1346905e602b6a49fe +0 -0
  686. package/vendor/libgit2/fuzzers/corpora/commit_graph/9c6883ba5cedb7d711b12733d66ef1a1156dd0af +0 -0
  687. package/vendor/libgit2/fuzzers/corpora/commit_graph/9c85c90f44b454ce0d52882c447f5ecb8d303634 +0 -0
  688. package/vendor/libgit2/fuzzers/corpora/commit_graph/9cb7a2e89ec636da3fd41ecc49ebe25e5344e2c6 +0 -0
  689. package/vendor/libgit2/fuzzers/corpora/commit_graph/9d912dc5a3497e4b5b40b37202fc0ffbf5263666 +0 -0
  690. package/vendor/libgit2/fuzzers/corpora/commit_graph/9dcbafe8c5345194ee0ce7eb4f6efaeb55543626 +0 -0
  691. package/vendor/libgit2/fuzzers/corpora/commit_graph/9f4b0f3d2d25e6405ba6093f24d0605327711573 +0 -0
  692. package/vendor/libgit2/fuzzers/corpora/commit_graph/a047bf683239fa208dbac09424b105820ac23f43 +0 -0
  693. package/vendor/libgit2/fuzzers/corpora/commit_graph/a1379dcd89ef5e73eabbfcc395113e3636e0ae09 +0 -0
  694. package/vendor/libgit2/fuzzers/corpora/commit_graph/a38c7ef56adabd0916abac514154b1f362d40434 +0 -0
  695. package/vendor/libgit2/fuzzers/corpora/commit_graph/a38ec6ad4a8466b4feb88e67b16524e8f3feac64 +0 -0
  696. package/vendor/libgit2/fuzzers/corpora/commit_graph/a3fdea21020268b3b2409c1115d50697d9ae8f8c +0 -0
  697. package/vendor/libgit2/fuzzers/corpora/commit_graph/a45f1987a444b2c27e90fc1477e8b0815f75383f +0 -0
  698. package/vendor/libgit2/fuzzers/corpora/commit_graph/a4682958fb7029384c0a01a4a1356ac6f2f44fe1 +0 -0
  699. package/vendor/libgit2/fuzzers/corpora/commit_graph/a4de41561725960d6f48f210a4fb74d527f7b0c2 +0 -0
  700. package/vendor/libgit2/fuzzers/corpora/commit_graph/a5935f34435ecdd6587ad4f77b20d479d3387dbe +0 -0
  701. package/vendor/libgit2/fuzzers/corpora/commit_graph/a5b394beb2b1d463ad80924a8c8c70584bf5c629 +0 -0
  702. package/vendor/libgit2/fuzzers/corpora/commit_graph/a62bc806f8c98ba7986243c2185a0548a8dd57ef +0 -0
  703. package/vendor/libgit2/fuzzers/corpora/commit_graph/a7013e97948893e0118c686c06e332cc611bea7e +0 -0
  704. package/vendor/libgit2/fuzzers/corpora/commit_graph/a74f5df8c7f25c37c15c0f74ed50019d17338225 +0 -0
  705. package/vendor/libgit2/fuzzers/corpora/commit_graph/a7ab3559fb3da3f027e67091116253f3bdfd7828 +0 -0
  706. package/vendor/libgit2/fuzzers/corpora/commit_graph/a845c8258a02022d447ea9249788b345f5504648 +0 -0
  707. package/vendor/libgit2/fuzzers/corpora/commit_graph/a8d3e026e2393587eb170afb32e94ff0e1f8a8be +0 -0
  708. package/vendor/libgit2/fuzzers/corpora/commit_graph/a8d547e41ee21e163e65cf0a186d469dfa50ec19 +0 -0
  709. package/vendor/libgit2/fuzzers/corpora/commit_graph/a8fa22521dd6813e595cc0a9586ee71fff305fe2 +0 -0
  710. package/vendor/libgit2/fuzzers/corpora/commit_graph/a9969442d585d9a53259c71c73b095701280eac5 +0 -0
  711. package/vendor/libgit2/fuzzers/corpora/commit_graph/a99789d0ce2d7b937aaa8afa3cfc0f4ccd7be95f +0 -0
  712. package/vendor/libgit2/fuzzers/corpora/commit_graph/aaca30ee3ab38edfa2b061fcbcbca0c0ea657f15 +0 -0
  713. package/vendor/libgit2/fuzzers/corpora/commit_graph/aacdec3f05e98eb6eedddb9c6edb968e1a63c551 +0 -0
  714. package/vendor/libgit2/fuzzers/corpora/commit_graph/aadd85127241b94a41d02d9e9699e3e9773de1c9 +0 -0
  715. package/vendor/libgit2/fuzzers/corpora/commit_graph/ab8ad126702803d21dbafc85713bbee7f25f36e5 +0 -0
  716. package/vendor/libgit2/fuzzers/corpora/commit_graph/ac26f9afd599ff6f33396c2e02130654f3e2390c +0 -0
  717. package/vendor/libgit2/fuzzers/corpora/commit_graph/ac8b129e4756fda0c50c9dd0eb13e34c7b41ce8e +1 -0
  718. package/vendor/libgit2/fuzzers/corpora/commit_graph/aceaf3b72c2627dd3dd065974b854150681c093f +0 -0
  719. package/vendor/libgit2/fuzzers/corpora/commit_graph/ad1fcdc3bf806392e754a902eba9edd3b344c31f +0 -0
  720. package/vendor/libgit2/fuzzers/corpora/commit_graph/ad8c80e532482f9dfbfbb7c0d447f1f4e592bf72 +0 -0
  721. package/vendor/libgit2/fuzzers/corpora/commit_graph/add92b71bf897da2f71f691e6abcb6d02cb8e99f +0 -0
  722. package/vendor/libgit2/fuzzers/corpora/commit_graph/aeb8ccf6d82be9236c9e689e1580d043bd701eb0 +0 -0
  723. package/vendor/libgit2/fuzzers/corpora/commit_graph/af1a827aedbf674fff2bdeb5589554eec62787ab +0 -0
  724. package/vendor/libgit2/fuzzers/corpora/commit_graph/afaab9a75414d231176ad4582b6f8d81b5dbedb3 +0 -0
  725. package/vendor/libgit2/fuzzers/corpora/commit_graph/afc12c4ebed1f3ab962d7dcef110b5328b1e24c3 +0 -0
  726. package/vendor/libgit2/fuzzers/corpora/commit_graph/b0044f3744cf019658d668a33f8d1e53ef8bd6ce +0 -0
  727. package/vendor/libgit2/fuzzers/corpora/commit_graph/b06adc81a4e1cdcda3786970ca07ed9dee0b6401 +0 -0
  728. package/vendor/libgit2/fuzzers/corpora/commit_graph/b139802a1cc90fd5b86cae044c221361892c688d +0 -0
  729. package/vendor/libgit2/fuzzers/corpora/commit_graph/b1b8f251542db01bdb01be3b6d5b117b07db1834 +0 -0
  730. package/vendor/libgit2/fuzzers/corpora/commit_graph/b1b9af93f84ed6861b9c0ade39980e89ef828c8f +0 -0
  731. package/vendor/libgit2/fuzzers/corpora/commit_graph/b2eae68035cafd4077f6a4c3e4e961fdc1e8122b +0 -0
  732. package/vendor/libgit2/fuzzers/corpora/commit_graph/b32897a6aedaa8c5a6e656dd808bafabc4ee5608 +0 -0
  733. package/vendor/libgit2/fuzzers/corpora/commit_graph/b376e4fc517297f92ac1713803ae3b60d5ebbe43 +0 -0
  734. package/vendor/libgit2/fuzzers/corpora/commit_graph/b3fd100b139cfbffaad68aacf7d462861e9dca35 +0 -0
  735. package/vendor/libgit2/fuzzers/corpora/commit_graph/b40808ca955faab4829811bced1cccb2ab58ea58 +0 -0
  736. package/vendor/libgit2/fuzzers/corpora/commit_graph/b43daf9f87a514bce74af3e5a39284c69c4e7011 +0 -0
  737. package/vendor/libgit2/fuzzers/corpora/commit_graph/b477da07f3e5796ff4a98c8a5bdb0e4a634954bf +0 -0
  738. package/vendor/libgit2/fuzzers/corpora/commit_graph/b4a2ef09cf59ca5ccf810a6f001cce710cc02f6b +0 -0
  739. package/vendor/libgit2/fuzzers/corpora/commit_graph/b4b75e588cb83430c502a34ec3dcfaf774a00359 +0 -0
  740. package/vendor/libgit2/fuzzers/corpora/commit_graph/b4ce98acd2b288b6cfc00461e2e15e0f8004030c +0 -0
  741. package/vendor/libgit2/fuzzers/corpora/commit_graph/b75563f30f7e4fb369d2449b723ee8b282d03eff +0 -0
  742. package/vendor/libgit2/fuzzers/corpora/commit_graph/b7a0a820afa7057081de186728d0d887131d9314 +0 -0
  743. package/vendor/libgit2/fuzzers/corpora/commit_graph/b7e880446146c735a3f820fb93969c8c172c2fb5 +0 -0
  744. package/vendor/libgit2/fuzzers/corpora/commit_graph/b833073d3006e7cbac03c494603a9b75e7b2a723 +0 -0
  745. package/vendor/libgit2/fuzzers/corpora/commit_graph/b89459c1fb6fc918db4c81a32a75ee66217f9ab8 +0 -0
  746. package/vendor/libgit2/fuzzers/corpora/commit_graph/b8aab6c9b2c706f8df0ff695ff94969171f9c807 +0 -0
  747. package/vendor/libgit2/fuzzers/corpora/commit_graph/b9751182a36acb79b77585e1e379857a530e95c8 +0 -0
  748. package/vendor/libgit2/fuzzers/corpora/commit_graph/b9ddb239b5a2c1348d972ec70a08507c35ba4432 +0 -0
  749. package/vendor/libgit2/fuzzers/corpora/commit_graph/ba8f573256a0fbb95c5626f399ebc3ef50bbd826 +0 -0
  750. package/vendor/libgit2/fuzzers/corpora/commit_graph/bc165749042d5425c5d6d4e29b17769a2315a80d +0 -0
  751. package/vendor/libgit2/fuzzers/corpora/commit_graph/bc910bd349319e1ed44d7c7266e3ac99cc29ecc6 +0 -0
  752. package/vendor/libgit2/fuzzers/corpora/commit_graph/bc97b1d4f57eb7770bc3983e2d57c8c01b21d29e +0 -0
  753. package/vendor/libgit2/fuzzers/corpora/commit_graph/bd06f768e35ded4437cb88e2bc0ddd0bea3fa84c +0 -0
  754. package/vendor/libgit2/fuzzers/corpora/commit_graph/bd702faff9725a7a1957fd0f85cc52799f37b682 +0 -0
  755. package/vendor/libgit2/fuzzers/corpora/commit_graph/bee4464861e1cae3cfdd5fbcb340efbf02e8d8ca +0 -0
  756. package/vendor/libgit2/fuzzers/corpora/commit_graph/bf7ad994b098ec85d62683a16e067635e21a8af5 +0 -0
  757. package/vendor/libgit2/fuzzers/corpora/commit_graph/c054fc89ed72101dec861668ff1738ef85b728b9 +0 -0
  758. package/vendor/libgit2/fuzzers/corpora/commit_graph/c06752415ac037fefe5172dc7245cd7c49ca7fca +0 -0
  759. package/vendor/libgit2/fuzzers/corpora/commit_graph/c0c8b54354d172a0be751e3e9b80be961bb15ddb +0 -0
  760. package/vendor/libgit2/fuzzers/corpora/commit_graph/c0e7ca9b5b4d0e72d23d7dc9e9d1f2463a17a20d +0 -0
  761. package/vendor/libgit2/fuzzers/corpora/commit_graph/c13576a29c98bee02aa47f646f5f170f9b7d83f9 +0 -0
  762. package/vendor/libgit2/fuzzers/corpora/commit_graph/c14edf1d34f40b3cc74772c81ebe5d72172cc662 +0 -0
  763. package/vendor/libgit2/fuzzers/corpora/commit_graph/c2789364cb35d111f08f924d0d7550ea9785c61e +0 -0
  764. package/vendor/libgit2/fuzzers/corpora/commit_graph/c2d8b07acb13e43a89b6c4afb3ecb9817dd4a8e9 +0 -0
  765. package/vendor/libgit2/fuzzers/corpora/commit_graph/c36ed796c1bf839668db8fc3475a2ffb32ad8ceb +0 -0
  766. package/vendor/libgit2/fuzzers/corpora/commit_graph/c41ec9dd94427423e4704721e7f21eae0c44ef20 +0 -0
  767. package/vendor/libgit2/fuzzers/corpora/commit_graph/c42c544fa9dbb1264b39bf920b40985384db1d16 +0 -0
  768. package/vendor/libgit2/fuzzers/corpora/commit_graph/c45ec3f594abc15de0a8cc3ad748ba23cb34ec64 +0 -0
  769. package/vendor/libgit2/fuzzers/corpora/commit_graph/c49004d980961f288616a4eb9ebf68123fd68ffa +0 -0
  770. package/vendor/libgit2/fuzzers/corpora/commit_graph/c4c3c3c8df24adf505127627b3090116de78d9a6 +0 -0
  771. package/vendor/libgit2/fuzzers/corpora/commit_graph/c5c1921293af4a5953cb386092694042715fcfb3 +0 -0
  772. package/vendor/libgit2/fuzzers/corpora/commit_graph/c615caad21cd8a754fcb2008420234c5511c62b7 +0 -0
  773. package/vendor/libgit2/fuzzers/corpora/commit_graph/c6a9ee3f8fdc42566c4799db3912a83c8c438d7f +0 -0
  774. package/vendor/libgit2/fuzzers/corpora/commit_graph/c6b661e976282051285b913b3728383f36103ef8 +0 -0
  775. package/vendor/libgit2/fuzzers/corpora/commit_graph/c716ba47f810c238fe7bda1fbdc7b1ccc34e9848 +1 -0
  776. package/vendor/libgit2/fuzzers/corpora/commit_graph/c85b2fa4421302e2fa333a9e33d59a882aa04f4f +0 -0
  777. package/vendor/libgit2/fuzzers/corpora/commit_graph/c871d135f2d3117b326688355bc0fa6f26d56cd6 +0 -0
  778. package/vendor/libgit2/fuzzers/corpora/commit_graph/c915b02265a27d185a8b028305f082ddb3ebd704 +0 -0
  779. package/vendor/libgit2/fuzzers/corpora/commit_graph/c952d38b3e642db4795d7f954b85f4f6d2a041aa +0 -0
  780. package/vendor/libgit2/fuzzers/corpora/commit_graph/c98ee52065736c4172f6ee0c31977bf1b560d685 +0 -0
  781. package/vendor/libgit2/fuzzers/corpora/commit_graph/c99b183a2cd0dd8a4c1a141cc6eebb0311501fa5 +1 -0
  782. package/vendor/libgit2/fuzzers/corpora/commit_graph/ca0cd26baff2f2c0759e619800ebbe7314d2bb95 +0 -0
  783. package/vendor/libgit2/fuzzers/corpora/commit_graph/ca3e0d745c35d7cceb0f6e3f8a709eb658b7e5a8 +0 -0
  784. package/vendor/libgit2/fuzzers/corpora/commit_graph/cac667320e99e93a796bb89842de4675735eb4a4 +0 -0
  785. package/vendor/libgit2/fuzzers/corpora/commit_graph/cb41b00e9db33a07e27b3ee05d3bbecaf853b963 +0 -0
  786. package/vendor/libgit2/fuzzers/corpora/commit_graph/cbdbd3f320eee627097778f15b9fb2c1dc2bd15f +0 -0
  787. package/vendor/libgit2/fuzzers/corpora/commit_graph/cc7f114000c83abb2ab17f0deab6dcfc2acde7f5 +0 -0
  788. package/vendor/libgit2/fuzzers/corpora/commit_graph/cc9bb93a6b7a1362a15f04898845dbe1447ec382 +0 -0
  789. package/vendor/libgit2/fuzzers/corpora/commit_graph/cce7355f826bbcf3955394596d358abc7df6fe6f +0 -0
  790. package/vendor/libgit2/fuzzers/corpora/commit_graph/cceff2878a558166fb5bf2a0354c1be31dcc4e21 +0 -0
  791. package/vendor/libgit2/fuzzers/corpora/commit_graph/cd96909f3ded7aa54bb2ffd2f2f47f8acc6f99e2 +0 -0
  792. package/vendor/libgit2/fuzzers/corpora/commit_graph/cee9f69d7d1a227833fba127a529ea2a10341da3 +0 -0
  793. package/vendor/libgit2/fuzzers/corpora/commit_graph/d064f27a3109afde629165432f78f389da73ff07 +0 -0
  794. package/vendor/libgit2/fuzzers/corpora/commit_graph/d07e3094f02b0c0e3bab370684c2d8c5634224d5 +0 -0
  795. package/vendor/libgit2/fuzzers/corpora/commit_graph/d0ba3413d5706de17de64824d78233d48c6efbec +0 -0
  796. package/vendor/libgit2/fuzzers/corpora/commit_graph/d136511364a74973b009f2be9b021d4122f71a6c +0 -0
  797. package/vendor/libgit2/fuzzers/corpora/commit_graph/d1d215c40bcc8dd4ce02b0c0621e90b183b40b3e +0 -0
  798. package/vendor/libgit2/fuzzers/corpora/commit_graph/d1e35b137b2027b61def408f3f3c8cf9bcab274e +0 -0
  799. package/vendor/libgit2/fuzzers/corpora/commit_graph/d349d137e57fb1a60ab8babd20e2acedc7a9042e +0 -0
  800. package/vendor/libgit2/fuzzers/corpora/commit_graph/d3714ec4d3acc6262295b0fc99c6ba699f5bfe65 +0 -0
  801. package/vendor/libgit2/fuzzers/corpora/commit_graph/d419df696512216074f1c6b17ea1dfc81c0e6e20 +0 -0
  802. package/vendor/libgit2/fuzzers/corpora/commit_graph/d49ad4fdafac251ceec32481826228c1698360aa +0 -0
  803. package/vendor/libgit2/fuzzers/corpora/commit_graph/d4f85ba549c87ccaba59971a25da7e07b57c9f4e +0 -0
  804. package/vendor/libgit2/fuzzers/corpora/commit_graph/d51ade0715bcea7decee2a045934599a10c1b07a +0 -0
  805. package/vendor/libgit2/fuzzers/corpora/commit_graph/d5447fb72c97462a3f47c8b2d55deb0afaa225f8 +0 -0
  806. package/vendor/libgit2/fuzzers/corpora/commit_graph/d6611a91c29291872ed2932455cb15ddb3801323 +0 -0
  807. package/vendor/libgit2/fuzzers/corpora/commit_graph/d676f5e7efd6de6f2e1773231479471d2bba7261 +0 -0
  808. package/vendor/libgit2/fuzzers/corpora/commit_graph/d6a21eaa08a957d8f428192e193c2508fca2c218 +0 -0
  809. package/vendor/libgit2/fuzzers/corpora/commit_graph/d778052a29539344a9e3144e262e68df9628ebde +0 -0
  810. package/vendor/libgit2/fuzzers/corpora/commit_graph/d884f6944adfff7cb41728062bf91cac5cdacfc9 +0 -0
  811. package/vendor/libgit2/fuzzers/corpora/commit_graph/d89aae18d8e320bbae55eaae6a0514d7e005a883 +0 -0
  812. package/vendor/libgit2/fuzzers/corpora/commit_graph/d926fde818c63f7b34f38c9f018bc833bc0bf7e1 +0 -0
  813. package/vendor/libgit2/fuzzers/corpora/commit_graph/d9d542d7c56774143cb6362e5a63739055469349 +0 -0
  814. package/vendor/libgit2/fuzzers/corpora/commit_graph/da99bc9ce5b831f132dfb2eb11b8537e5cccfcd4 +0 -0
  815. package/vendor/libgit2/fuzzers/corpora/commit_graph/dabff2729fa69ab507fb00b7392aee1262056a29 +0 -0
  816. package/vendor/libgit2/fuzzers/corpora/commit_graph/dac4f4b91e33847bcedf7c66ef6e4ad0181e8ad8 +0 -0
  817. package/vendor/libgit2/fuzzers/corpora/commit_graph/db10ff6d01c7a66aa1823b9f99193590ddce99c6 +0 -0
  818. package/vendor/libgit2/fuzzers/corpora/commit_graph/dbbda2208fa688a5275dda0d304630db01ca081d +0 -0
  819. package/vendor/libgit2/fuzzers/corpora/commit_graph/dc47c5037be68a2747ff8a9fa450e1078a5ac5a5 +0 -0
  820. package/vendor/libgit2/fuzzers/corpora/commit_graph/dc760f136b123e38677aec72853e3365f08010fc +0 -0
  821. package/vendor/libgit2/fuzzers/corpora/commit_graph/dca41b901bf1612d4197e6a450366a00ac036ec3 +0 -0
  822. package/vendor/libgit2/fuzzers/corpora/commit_graph/dca62f21fce50d1c8c51b82e0d7eeedc6746e652 +0 -0
  823. package/vendor/libgit2/fuzzers/corpora/commit_graph/dcc7e6c444f95b10d634b1137413824e2cd68f62 +0 -0
  824. package/vendor/libgit2/fuzzers/corpora/commit_graph/dcf4b6addda69040f792c9b860ade2af0b77a14c +0 -0
  825. package/vendor/libgit2/fuzzers/corpora/commit_graph/dd6178166ac1eed82d132fea491bcda0d953227c +0 -0
  826. package/vendor/libgit2/fuzzers/corpora/commit_graph/ddbd5d3074323ccd7cd70bf5de5a2f30de977d99 +0 -0
  827. package/vendor/libgit2/fuzzers/corpora/commit_graph/ddd8ec5632bf1b8153d03a4537d3d76517c497d5 +0 -0
  828. package/vendor/libgit2/fuzzers/corpora/commit_graph/de7a56f36e10d7b9ff43160b1cea3e76b24386d1 +0 -0
  829. package/vendor/libgit2/fuzzers/corpora/commit_graph/defa60aa46ea5a47c09b6962b4e4296ef1bcad92 +0 -0
  830. package/vendor/libgit2/fuzzers/corpora/commit_graph/e0ae419425207832518d66c0ef35d11cbdc20361 +0 -0
  831. package/vendor/libgit2/fuzzers/corpora/commit_graph/e0f519accbf15bc57a1bf1d7cc46d2a0b07a67f5 +0 -0
  832. package/vendor/libgit2/fuzzers/corpora/commit_graph/e128eff8ca7572d9bb0bfc84f64d79c52afc2c67 +0 -0
  833. package/vendor/libgit2/fuzzers/corpora/commit_graph/e17fdc21ae03243bd1d31bb6301b4187cab6fe47 +0 -0
  834. package/vendor/libgit2/fuzzers/corpora/commit_graph/e340ace35a2db7f89d6aa21cc1300766a74be4e1 +0 -0
  835. package/vendor/libgit2/fuzzers/corpora/commit_graph/e36dfc11bcaab1e42df13924a2d7da024684db2e +0 -0
  836. package/vendor/libgit2/fuzzers/corpora/commit_graph/e39e0c87ac5ce0b78c89ae2df84226baba666372 +0 -0
  837. package/vendor/libgit2/fuzzers/corpora/commit_graph/e46b4666c6bfcd6f589ec3617a48cce9c968e833 +0 -0
  838. package/vendor/libgit2/fuzzers/corpora/commit_graph/e57219555e11f9221d3166d5029ed2ad92300608 +0 -0
  839. package/vendor/libgit2/fuzzers/corpora/commit_graph/e58ce590c2454e7ebe18e0a31a943b0b754fbd13 +0 -0
  840. package/vendor/libgit2/fuzzers/corpora/commit_graph/e595f8fef5c8014cb0867978c6580301078ca0d9 +0 -0
  841. package/vendor/libgit2/fuzzers/corpora/commit_graph/e5b76398f60628e879328d7009b9fa89feea14cb +0 -0
  842. package/vendor/libgit2/fuzzers/corpora/commit_graph/e5cec0217eea93b18a59d76b0aed6b46b13fa6a9 +0 -0
  843. package/vendor/libgit2/fuzzers/corpora/commit_graph/e637b4e0b47d0d6cd870502e6a2d6a53bf917f73 +0 -0
  844. package/vendor/libgit2/fuzzers/corpora/commit_graph/e7a6cb6e5a1552837fdbee9025fc48a9373f8564 +0 -0
  845. package/vendor/libgit2/fuzzers/corpora/commit_graph/e7f57c48016e1180c9af95acd34470881f10bd06 +0 -0
  846. package/vendor/libgit2/fuzzers/corpora/commit_graph/e8253c668bfe37df5c5ada3226860cee74fb33a2 +0 -0
  847. package/vendor/libgit2/fuzzers/corpora/commit_graph/e8f9981443c34ece02bca3c66130f3429d7b3375 +0 -0
  848. package/vendor/libgit2/fuzzers/corpora/commit_graph/e91ed5416bbcd1b03803197b99c08f42c9869139 +0 -0
  849. package/vendor/libgit2/fuzzers/corpora/commit_graph/e94201cfa88df7b198abd3abae9007a6780b52a7 +0 -0
  850. package/vendor/libgit2/fuzzers/corpora/commit_graph/e967bbd6a0d251ae62c9c38b784271d707f792c0 +0 -0
  851. package/vendor/libgit2/fuzzers/corpora/commit_graph/ea01737ceed783b3e0f66d9d0c409cb496c1d526 +0 -0
  852. package/vendor/libgit2/fuzzers/corpora/commit_graph/ea40f7879a58d1e52a46404c761f76a949e14a31 +0 -0
  853. package/vendor/libgit2/fuzzers/corpora/commit_graph/ea5ad04a54f95963baea1f47845847626e08dd55 +0 -0
  854. package/vendor/libgit2/fuzzers/corpora/commit_graph/ea608a401f54b0ca70e42b897f0c8ce6efdbc0ef +0 -0
  855. package/vendor/libgit2/fuzzers/corpora/commit_graph/eb8700d6b3728e6e70c2a0fe504543771639f2b6 +0 -0
  856. package/vendor/libgit2/fuzzers/corpora/commit_graph/ec1f271b04c322353865f4819153d46df7def873 +0 -0
  857. package/vendor/libgit2/fuzzers/corpora/commit_graph/ee215536e7f0cfbd07b53dd65c5af9a604a01830 +0 -0
  858. package/vendor/libgit2/fuzzers/corpora/commit_graph/ee4d4393d7d79b755f85ef5bf8f6e3d743bfa258 +0 -0
  859. package/vendor/libgit2/fuzzers/corpora/commit_graph/ee8099331b2c392e7e036ffcd4a9b36ec2c2082d +0 -0
  860. package/vendor/libgit2/fuzzers/corpora/commit_graph/eede9da76db25513f8347f972e170102831de91a +0 -0
  861. package/vendor/libgit2/fuzzers/corpora/commit_graph/ef707cdeaa9548b6c820f769c1d8ad607b3c4514 +0 -0
  862. package/vendor/libgit2/fuzzers/corpora/commit_graph/ef98609d8196dc158365dfcbbc47e3d1699c50c2 +0 -0
  863. package/vendor/libgit2/fuzzers/corpora/commit_graph/efa38b4269f978f3714b44b501831bea678244e0 +0 -0
  864. package/vendor/libgit2/fuzzers/corpora/commit_graph/efba428e29811d233720ccaaf41966a309312a29 +0 -0
  865. package/vendor/libgit2/fuzzers/corpora/commit_graph/efd514f056d8d83498b4724249c4623560e0390d +0 -0
  866. package/vendor/libgit2/fuzzers/corpora/commit_graph/f00e449ba67ef15e7f29df1e6948c28155d72baa +0 -0
  867. package/vendor/libgit2/fuzzers/corpora/commit_graph/f0a83929d588466051dced6eae0c387db307d646 +0 -0
  868. package/vendor/libgit2/fuzzers/corpora/commit_graph/f0e53b72e5d69467e7c014474028ea734f4fcb26 +0 -0
  869. package/vendor/libgit2/fuzzers/corpora/commit_graph/f186265b3f10f4383f4174e9fb74f0a0cdfa3fca +0 -0
  870. package/vendor/libgit2/fuzzers/corpora/commit_graph/f18932fcce5a9db5d6c8f59d622eabc25e255e12 +0 -0
  871. package/vendor/libgit2/fuzzers/corpora/commit_graph/f2ea163bddb95d67597e2a747779ebf4651cb2a9 +0 -0
  872. package/vendor/libgit2/fuzzers/corpora/commit_graph/f2f7d48a6d86143ecb4969808d634163576065b1 +0 -0
  873. package/vendor/libgit2/fuzzers/corpora/commit_graph/f34a833faf2b0dcbae8aaad142c76c7c7e534e99 +0 -0
  874. package/vendor/libgit2/fuzzers/corpora/commit_graph/f5c044ce01645c069334698fb8c4750e44835912 +0 -0
  875. package/vendor/libgit2/fuzzers/corpora/commit_graph/f680112645c2502f0612e9d017bbb50cb28affbf +0 -0
  876. package/vendor/libgit2/fuzzers/corpora/commit_graph/f6b778d1b34415a7715905f54968c8b6eb057912 +0 -0
  877. package/vendor/libgit2/fuzzers/corpora/commit_graph/f6ca6a62dc885c6b2a4b40c4aa1a7cb8118e30bb +0 -0
  878. package/vendor/libgit2/fuzzers/corpora/commit_graph/f733a8770c23fde182d2fef7e0d96e67244274d5 +0 -0
  879. package/vendor/libgit2/fuzzers/corpora/commit_graph/f8529ddf17d4505c0932c3d40abe33cbfd8c6f22 +0 -0
  880. package/vendor/libgit2/fuzzers/corpora/commit_graph/f96f8419a3fc3719ae86d64e1147e7b7f66a2470 +0 -0
  881. package/vendor/libgit2/fuzzers/corpora/commit_graph/fae241a6c87af37781a3b49e534b7ddb6636eda8 +0 -0
  882. package/vendor/libgit2/fuzzers/corpora/commit_graph/faf8817a04b77c6a976ab0a3d1e905f79bb7f799 +0 -0
  883. package/vendor/libgit2/fuzzers/corpora/commit_graph/fb3e769019fb25d384d4be9d38e4cbce00a6adbc +0 -0
  884. package/vendor/libgit2/fuzzers/corpora/commit_graph/fb9b4b2a46f1c65076340a7bd03b076eb101b760 +0 -0
  885. package/vendor/libgit2/fuzzers/corpora/commit_graph/fca9b0a398832c9ba02cdc811f625b97d5beb18e +0 -0
  886. package/vendor/libgit2/fuzzers/corpora/commit_graph/fcb1b42c706e61245d5e86f708be777ae63f2772 +0 -0
  887. package/vendor/libgit2/fuzzers/corpora/commit_graph/fd6c463e7c30b0e51198c0d1ebbea25f20145e3f +0 -0
  888. package/vendor/libgit2/fuzzers/corpora/commit_graph/fdcbaa49097ad120c6d7709b29d5b65b8cf8e719 +0 -0
  889. package/vendor/libgit2/fuzzers/corpora/commit_graph/fe46775b28a2923b8770b44381552a8a1560d875 +0 -0
  890. package/vendor/libgit2/fuzzers/corpora/commit_graph/ff04441135ef3308fec2687cf688069c6df8aa31 +0 -0
  891. package/vendor/libgit2/fuzzers/corpora/midx/037cbbe0dc03807dd9d9e8629f1712d7df34ee18 +0 -0
  892. package/vendor/libgit2/fuzzers/corpora/midx/039ee34fef8f323ed618a10abc0109df123d0cb5 +0 -0
  893. package/vendor/libgit2/fuzzers/corpora/midx/054ee2c82bdb6a170106eb5d35f21bde2119d584 +1 -0
  894. package/vendor/libgit2/fuzzers/corpora/midx/055ca4cbc961ebf5fd5c922b4f73880d3fbfe39d +0 -0
  895. package/vendor/libgit2/fuzzers/corpora/midx/05c4e5eb1b97bc9b6973921fcb30d4c5e2eb79e4 +0 -0
  896. package/vendor/libgit2/fuzzers/corpora/midx/0672eeda541a191cfc68d521a3c7ac0aac4057a6 +0 -0
  897. package/vendor/libgit2/fuzzers/corpora/midx/06a58d1bd5562a668ebf01ef297fd774e0e587a6 +0 -0
  898. package/vendor/libgit2/fuzzers/corpora/midx/06bf7c2461ae1049030f31b83ae76babfcc20c83 +0 -0
  899. package/vendor/libgit2/fuzzers/corpora/midx/06c2db67ea65758d971346bfd6beaa61ed12f22c +0 -0
  900. package/vendor/libgit2/fuzzers/corpora/midx/07f88eefaf12609b7370fe78b82be2955f1b41fd +0 -0
  901. package/vendor/libgit2/fuzzers/corpora/midx/08495c5f3828a56c167de870d385c46ffdce03c5 +0 -0
  902. package/vendor/libgit2/fuzzers/corpora/midx/08ec8594e5b35fb9e8e0726584f720154f0b2b5d +0 -0
  903. package/vendor/libgit2/fuzzers/corpora/midx/0903e378a493c596298074d6bff8de7f9ac25aa7 +1 -0
  904. package/vendor/libgit2/fuzzers/corpora/midx/09144a846f90f894049ef8a0ed0cc7ab4588dc6c +1 -0
  905. package/vendor/libgit2/fuzzers/corpora/midx/09b40dd618373bfe4d3f2838f686a70f645e640b +0 -0
  906. package/vendor/libgit2/fuzzers/corpora/midx/0a00ef44d234c18d365ec41724dbf4f21b09d0c5 +0 -0
  907. package/vendor/libgit2/fuzzers/corpora/midx/0a94e9f4a9b8cf56d52a9e3e7f2fa9a0a5c80d30 +0 -0
  908. package/vendor/libgit2/fuzzers/corpora/midx/0b35a123104b7872a7f15a710a23ef3594ace04d +0 -0
  909. package/vendor/libgit2/fuzzers/corpora/midx/0c3d7e6be32c014ea873440b0f095961d391af1a +0 -0
  910. package/vendor/libgit2/fuzzers/corpora/midx/0c65de477b89afc312a7e89cde06f8a17f65bd54 +0 -0
  911. package/vendor/libgit2/fuzzers/corpora/midx/0c81d0f368e979d2a0eb4598cbf1c9283936ba0c +0 -0
  912. package/vendor/libgit2/fuzzers/corpora/midx/0c95a44ae995070a5279a2991c36de2251081460 +0 -0
  913. package/vendor/libgit2/fuzzers/corpora/midx/0de38e2cb13167df7d5a882570633596f64bc4f4 +0 -0
  914. package/vendor/libgit2/fuzzers/corpora/midx/0de96aa193045315457ade63c2614610c503db9e +0 -0
  915. package/vendor/libgit2/fuzzers/corpora/midx/0e02deca2b16d71f8637933bd56dc8592ed9fdff +1 -0
  916. package/vendor/libgit2/fuzzers/corpora/midx/0e44fc9176fe2c1bae4209369da5bc057f54b2d2 +0 -0
  917. package/vendor/libgit2/fuzzers/corpora/midx/0f6c5fc9b6a68835364bbef8937560ee5a481938 +1 -0
  918. package/vendor/libgit2/fuzzers/corpora/midx/10d542d5c7da060a5f0664e21478a0d598e29844 +0 -0
  919. package/vendor/libgit2/fuzzers/corpora/midx/118735f7786ae6b4c2f6b36314ab1f2cafe9c3c8 +1 -0
  920. package/vendor/libgit2/fuzzers/corpora/midx/119b58eb353aa344264005016297fb911510ea0d +0 -0
  921. package/vendor/libgit2/fuzzers/corpora/midx/127626832c30d6d94bb29384c0fde7ac6bca75ec +0 -0
  922. package/vendor/libgit2/fuzzers/corpora/midx/1284f1a162588d4de87ca17149474644a0863b27 +0 -0
  923. package/vendor/libgit2/fuzzers/corpora/midx/1458599f19f1a967c787562bf8ec3e67677da9c8 +0 -0
  924. package/vendor/libgit2/fuzzers/corpora/midx/14ba6c1ddd05b22c6f2eae5f894721cd3efcbb16 +0 -0
  925. package/vendor/libgit2/fuzzers/corpora/midx/158cdc0a5aa005f167a8588d0beed9eee4aa36f2 +0 -0
  926. package/vendor/libgit2/fuzzers/corpora/midx/15dafc6fa800327f694b5eb2fc4ebf007be9c117 +0 -0
  927. package/vendor/libgit2/fuzzers/corpora/midx/1613ed4b2e909871f8897fd6354ff80a4ac12f87 +0 -0
  928. package/vendor/libgit2/fuzzers/corpora/midx/16daf4cb967bb47cf4566e9be7d96d3125bd2e12 +0 -0
  929. package/vendor/libgit2/fuzzers/corpora/midx/177783dce78efee878f6d6020fd87ab107bb11a1 +0 -0
  930. package/vendor/libgit2/fuzzers/corpora/midx/17a5090400a1fedc45070e4b530a26f320a89097 +0 -0
  931. package/vendor/libgit2/fuzzers/corpora/midx/17dea5cfa498f4d54384289a1daed0d15a85e7cc +0 -0
  932. package/vendor/libgit2/fuzzers/corpora/midx/17e76ae5b54316679981113f52c27edc87dbcdea +0 -0
  933. package/vendor/libgit2/fuzzers/corpora/midx/191ed5e9334693c53fc843f692dbc3c2c63e8241 +0 -0
  934. package/vendor/libgit2/fuzzers/corpora/midx/196a0ba4edb5bbfd66c1cda669abf0496573cf0e +0 -0
  935. package/vendor/libgit2/fuzzers/corpora/midx/19742b6cee79fa5bf9b27dcbe367c82d0a399904 +0 -0
  936. package/vendor/libgit2/fuzzers/corpora/midx/1a21d7581d3b0a8d67934d48e91d45bd818836e8 +0 -0
  937. package/vendor/libgit2/fuzzers/corpora/midx/1b2f96c5d75c7ca09b1012be4e6c3a7b248ed924 +0 -0
  938. package/vendor/libgit2/fuzzers/corpora/midx/1b604ff0683d0e23dc7945431f6514ba30d6ca0d +0 -0
  939. package/vendor/libgit2/fuzzers/corpora/midx/1b771dd5bd3ae2b1c42c4efe6c896c83b88a4f91 +0 -0
  940. package/vendor/libgit2/fuzzers/corpora/midx/1b793a4ee73fa8bf423da70fca5f39ef32a8d288 +0 -0
  941. package/vendor/libgit2/fuzzers/corpora/midx/1c9599ce00978780519272be279f508c402e3268 +1 -0
  942. package/vendor/libgit2/fuzzers/corpora/midx/1cc0068f9f63b12dc8fdd38f9ebfb96c42664e95 +0 -0
  943. package/vendor/libgit2/fuzzers/corpora/midx/1de6e1f5579da6e5c40f4ee23ac62e29e4f90541 +0 -0
  944. package/vendor/libgit2/fuzzers/corpora/midx/1eec93083260ebfab5f4c6d13119cf27c374b7e9 +0 -0
  945. package/vendor/libgit2/fuzzers/corpora/midx/1f0f574addd363d1fed131289f301c5c033aaa8f +0 -0
  946. package/vendor/libgit2/fuzzers/corpora/midx/1f3e85cffdb545c1ba7c8bbe1ca18ec13e341038 +0 -0
  947. package/vendor/libgit2/fuzzers/corpora/midx/1f6a66a92d5f083a73a82280a0a1ae0800e56ae5 +0 -0
  948. package/vendor/libgit2/fuzzers/corpora/midx/208e422322052efcdaeb1a09bbf06c5f476b8efc +0 -0
  949. package/vendor/libgit2/fuzzers/corpora/midx/22d75b2c3937957b14eded621b638283ce7fe1fe +0 -0
  950. package/vendor/libgit2/fuzzers/corpora/midx/22f90ff68166a409acf8f89bf60a31ad2c64ab37 +0 -0
  951. package/vendor/libgit2/fuzzers/corpora/midx/236ebad449d432b039d6ace1f250ef1fa2aa364d +0 -0
  952. package/vendor/libgit2/fuzzers/corpora/midx/252a4e4bf7fb21792ec2f305fd88fa7c9168505f +0 -0
  953. package/vendor/libgit2/fuzzers/corpora/midx/259e1faf7b7f12250062d36ded1193a9dbcae0f5 +0 -0
  954. package/vendor/libgit2/fuzzers/corpora/midx/25ad3dfb655ab4c853d0d277872310d9579c8e83 +0 -0
  955. package/vendor/libgit2/fuzzers/corpora/midx/26210f5b8fdbf81b312feea48659ec6e2e083c0b +0 -0
  956. package/vendor/libgit2/fuzzers/corpora/midx/263a2a0915be36d8cb2bc30774e37e0344262347 +0 -0
  957. package/vendor/libgit2/fuzzers/corpora/midx/2679bfbc2f4f7c10a304245da4e156e235377b63 +0 -0
  958. package/vendor/libgit2/fuzzers/corpora/midx/270b7b567a63dd94bb2a90448bbbc2e2bbc4a261 +0 -0
  959. package/vendor/libgit2/fuzzers/corpora/midx/271cd5c5e254a293d115588ee130040ef26b59e8 +0 -0
  960. package/vendor/libgit2/fuzzers/corpora/midx/27839a8035b48f8c19ab073808a03a95b6a90cc3 +0 -0
  961. package/vendor/libgit2/fuzzers/corpora/midx/2810c385c9285cbdb65bcdab5175999fe547cbad +0 -0
  962. package/vendor/libgit2/fuzzers/corpora/midx/28afaf4ab4b092ccf987661e58009f96126bba63 +0 -0
  963. package/vendor/libgit2/fuzzers/corpora/midx/29f842e86a891cff9f0b44c8aec19f7e23a47000 +0 -0
  964. package/vendor/libgit2/fuzzers/corpora/midx/2aa2549f617f19402d1feac61d4ca1af3545cc8a +0 -0
  965. package/vendor/libgit2/fuzzers/corpora/midx/2b73c2902eda6da41321493601003b29c3445713 +0 -0
  966. package/vendor/libgit2/fuzzers/corpora/midx/2bcec1274c5e7b2d7a581d851c016ef5b553fabe +0 -0
  967. package/vendor/libgit2/fuzzers/corpora/midx/2dd9a328b6d4e29e42684347be5c4b7cd7dc1a66 +0 -0
  968. package/vendor/libgit2/fuzzers/corpora/midx/2ddc17ee7ee89bb7dbc673328d5f3e55c76e686e +0 -0
  969. package/vendor/libgit2/fuzzers/corpora/midx/2f71d5e99dc93618ed99fdb7c244a8f5e4a7eb4a +0 -0
  970. package/vendor/libgit2/fuzzers/corpora/midx/2f7cd0154d71a83e7b104670b2a77fbd285ffde2 +0 -0
  971. package/vendor/libgit2/fuzzers/corpora/midx/2f9d40ef790f5213234e95d123dce942b2d1d389 +0 -0
  972. package/vendor/libgit2/fuzzers/corpora/midx/31577bacbca7017308d2a0c9ebfdd4fce513bbe4 +0 -0
  973. package/vendor/libgit2/fuzzers/corpora/midx/3278f1bab88b80597d0066812d49f8bd3c7b1dcf +0 -0
  974. package/vendor/libgit2/fuzzers/corpora/midx/328160cae6235605ff70951a2f6ac669ba7bb397 +0 -0
  975. package/vendor/libgit2/fuzzers/corpora/midx/337ed1bf91701a4c8926840259077e55938c6efc +0 -0
  976. package/vendor/libgit2/fuzzers/corpora/midx/33a97d83ff7a774797b1751ea4bffbb4a22c58d9 +0 -0
  977. package/vendor/libgit2/fuzzers/corpora/midx/341021da9516401cf364ed2b7dfdda346db04f2f +0 -0
  978. package/vendor/libgit2/fuzzers/corpora/midx/341773a439cdecc58f55fb205ac584cd93ffe0f2 +1 -0
  979. package/vendor/libgit2/fuzzers/corpora/midx/366091157510e40bca08fc2102b9018ccf4697de +0 -0
  980. package/vendor/libgit2/fuzzers/corpora/midx/37096157e2f9f2ec8e0b97b21d335bd653f3edbd +0 -0
  981. package/vendor/libgit2/fuzzers/corpora/midx/373a74b8613d09babcb567f91047e7b556a8de90 +0 -0
  982. package/vendor/libgit2/fuzzers/corpora/midx/3748b07ee7bec7bdd202ee14222cefca182417d1 +0 -0
  983. package/vendor/libgit2/fuzzers/corpora/midx/38b7906b9f956dca01dc92d0a901388ec1cbc8b1 +0 -0
  984. package/vendor/libgit2/fuzzers/corpora/midx/38ddf3424559f1a6e7687eff8469a358184b833b +1 -0
  985. package/vendor/libgit2/fuzzers/corpora/midx/38e31d0a7dcc3835ce1a4afeeda8446fb3d7ed73 +0 -0
  986. package/vendor/libgit2/fuzzers/corpora/midx/3955ec4497b226391ef9eb40f38af6dee4fa26b7 +0 -0
  987. package/vendor/libgit2/fuzzers/corpora/midx/3b6b424342133feb0f587f22bcd8f21595c004e5 +0 -0
  988. package/vendor/libgit2/fuzzers/corpora/midx/3bb71f41200e0ebf8d19532e7d6e384c48aa2d03 +0 -0
  989. package/vendor/libgit2/fuzzers/corpora/midx/3c5a6063797aba9ffe5ea9903bbfcf87193652d3 +0 -0
  990. package/vendor/libgit2/fuzzers/corpora/midx/3dfb9927d959f2462f6944a32d080b60a265abfe +0 -0
  991. package/vendor/libgit2/fuzzers/corpora/midx/3e19242a63ec92a0c3f7138ebbc31bfe7cbd40cd +0 -0
  992. package/vendor/libgit2/fuzzers/corpora/midx/3ec53ce4ea1f41f040a3c2beed929572af95dd43 +0 -0
  993. package/vendor/libgit2/fuzzers/corpora/midx/3f0762fdf49a58c0d8fd6683964a85caddee391b +0 -0
  994. package/vendor/libgit2/fuzzers/corpora/midx/3f71ae863c4e9bac98e49a554b8ec4d78b17492d +1 -0
  995. package/vendor/libgit2/fuzzers/corpora/midx/3f9df30bfb66a28fbe6f1951ef7ae4ca9f19fdf2 +0 -0
  996. package/vendor/libgit2/fuzzers/corpora/midx/3fabb14670c008c22094c1d7cd7b1e23b4c48b3d +0 -0
  997. package/vendor/libgit2/fuzzers/corpora/midx/408fba9c66c5d1deb31e4c69f1dd0677844dbc1b +0 -0
  998. package/vendor/libgit2/fuzzers/corpora/midx/40ca8645081087e950ad61bccf8d43450366356e +0 -0
  999. package/vendor/libgit2/fuzzers/corpora/midx/412faec949b9d04498de939561664ee559a583a7 +1 -0
  1000. package/vendor/libgit2/fuzzers/corpora/midx/4148bd5336f89e73b2a5416c67d491c0ec4a2b7d +0 -0
  1001. package/vendor/libgit2/fuzzers/corpora/midx/41933e61fa20fbe2b190f9ae7ceae4a4b1220021 +0 -0
  1002. package/vendor/libgit2/fuzzers/corpora/midx/423d90f3fc7ddc146095ec5a4b4f455aa876b69b +0 -0
  1003. package/vendor/libgit2/fuzzers/corpora/midx/42a6c52249aa12cfef1db1bf302a483a01c972f3 +0 -0
  1004. package/vendor/libgit2/fuzzers/corpora/midx/42a82726f0e70da9b87b6c52bc1b3415576025f2 +0 -0
  1005. package/vendor/libgit2/fuzzers/corpora/midx/4458e19f99e38c61ad9792b0b3bf8ac79f8236f1 +1 -0
  1006. package/vendor/libgit2/fuzzers/corpora/midx/44a4411a8d6ed67ee3ea61d91d2afafe89295b0f +0 -0
  1007. package/vendor/libgit2/fuzzers/corpora/midx/44e04754d1b6c0c045e05509dd7033d19a926b10 +0 -0
  1008. package/vendor/libgit2/fuzzers/corpora/midx/45259e9f0a2cc7739a94eccaafb37c1570f73884 +0 -0
  1009. package/vendor/libgit2/fuzzers/corpora/midx/46c0d7e952200cabc08b9cd776a9f6759f4208c3 +0 -0
  1010. package/vendor/libgit2/fuzzers/corpora/midx/46deac8631633ea3c32005124e20a2bc2bbabade +0 -0
  1011. package/vendor/libgit2/fuzzers/corpora/midx/46e7edf6e9d6cbcdabde3b48f1c4efd93be40348 +0 -0
  1012. package/vendor/libgit2/fuzzers/corpora/midx/46fe9556c28c94f7321baa2519a3cbeabbd54d09 +0 -0
  1013. package/vendor/libgit2/fuzzers/corpora/midx/49223681729e73b48b26a2262e4a66b2ba00e176 +0 -0
  1014. package/vendor/libgit2/fuzzers/corpora/midx/499e61b689f6cc7e4efb0631684739c2a6f97c7d +0 -0
  1015. package/vendor/libgit2/fuzzers/corpora/midx/4a06ad8c4d717bd048a7a1315a3d609d70f0162d +0 -0
  1016. package/vendor/libgit2/fuzzers/corpora/midx/4adb7d4791a4c6370478dff2eb987d715554bf09 +0 -0
  1017. package/vendor/libgit2/fuzzers/corpora/midx/4b01c479cdc9b750a31d5e7ac5004309222d218d +0 -0
  1018. package/vendor/libgit2/fuzzers/corpora/midx/4bce7460a6becba6d26984bb438d7d3aa4e4fc56 +0 -0
  1019. package/vendor/libgit2/fuzzers/corpora/midx/4cc96483b6800dda296f00887b12a35154115090 +0 -0
  1020. package/vendor/libgit2/fuzzers/corpora/midx/4f3aa59bae0619c9a06b631d9cb7767591810ab0 +0 -0
  1021. package/vendor/libgit2/fuzzers/corpora/midx/501840d963cedd2945018de59e0202444d7ebf4b +0 -0
  1022. package/vendor/libgit2/fuzzers/corpora/midx/50479958c030d1addceb1ca8c27f24447e555e65 +0 -0
  1023. package/vendor/libgit2/fuzzers/corpora/midx/508ba8ef164a809f739834a39d690e700101a7a1 +0 -0
  1024. package/vendor/libgit2/fuzzers/corpora/midx/521d345313812e54bc6c944485e19dbb39a87768 +0 -0
  1025. package/vendor/libgit2/fuzzers/corpora/midx/5369d74ac157f85b597c1b28bbd6768105e9327b +0 -0
  1026. package/vendor/libgit2/fuzzers/corpora/midx/53997b0146ff49bfe464be203b130a67ea93fd26 +0 -0
  1027. package/vendor/libgit2/fuzzers/corpora/midx/560ea8bd7d11b00e0d21631b6d9ec7e63f0a5286 +0 -0
  1028. package/vendor/libgit2/fuzzers/corpora/midx/5682ebc6878e247ce9bc636d34ada6ad338fcaf0 +0 -0
  1029. package/vendor/libgit2/fuzzers/corpora/midx/5762abb5234edd913754b69e1ab03274c711ee68 +0 -0
  1030. package/vendor/libgit2/fuzzers/corpora/midx/579406f055070559bda3c6120107feb3e637c481 +2 -0
  1031. package/vendor/libgit2/fuzzers/corpora/midx/5837d16af4a9c1f2616467cc4aa9ec8836e05c58 +0 -0
  1032. package/vendor/libgit2/fuzzers/corpora/midx/58901e865fe20b9fa136cca4b253d3ae73c2b78e +0 -0
  1033. package/vendor/libgit2/fuzzers/corpora/midx/58a87098a14572e46b53c87340083f999d8fcfc2 +0 -0
  1034. package/vendor/libgit2/fuzzers/corpora/midx/59ae139a21448e0eb7371ddc6ef57f0c9dfe9c85 +0 -0
  1035. package/vendor/libgit2/fuzzers/corpora/midx/5a7e81419f895168c555ac9b4e75a1ad4f04b34a +0 -0
  1036. package/vendor/libgit2/fuzzers/corpora/midx/5b848c1f56a150d64020e9b0bb398a286dca4096 +0 -0
  1037. package/vendor/libgit2/fuzzers/corpora/midx/5bd311bd846336149b2815666052fdb7e8bf2ea6 +0 -0
  1038. package/vendor/libgit2/fuzzers/corpora/midx/5ce77eb98473a2e01d04909939edf7aabef5762c +0 -0
  1039. package/vendor/libgit2/fuzzers/corpora/midx/5e5cd5819811507ac69bd8abad27433ccd6b7521 +0 -0
  1040. package/vendor/libgit2/fuzzers/corpora/midx/5ea114ae3dbb140364000c416152b0f32ce3de23 +0 -0
  1041. package/vendor/libgit2/fuzzers/corpora/midx/5f181bb0a79603c84534a9b8e37ecdeb1d2aeeb5 +1 -0
  1042. package/vendor/libgit2/fuzzers/corpora/midx/5f428ce1169e28353cedb8be3e2f6edd0ef354e4 +0 -0
  1043. package/vendor/libgit2/fuzzers/corpora/midx/5f9bc7729dc331e3c4d8e52df0688abad6d4aee8 +0 -0
  1044. package/vendor/libgit2/fuzzers/corpora/midx/619527e1d650cd1c26e9bc61e424c9fdc04b17b9 +0 -0
  1045. package/vendor/libgit2/fuzzers/corpora/midx/625d3676de25188865e05db2a3933c38508406fc +0 -0
  1046. package/vendor/libgit2/fuzzers/corpora/midx/6368569cfde7fbe369a0ee4695fa4d5a7d7887a6 +0 -0
  1047. package/vendor/libgit2/fuzzers/corpora/midx/6388fe4d630064ea1ea33aa85381d9c82e328e95 +0 -0
  1048. package/vendor/libgit2/fuzzers/corpora/midx/64cff4e110f0bcb3ea833c1afda6e27a57dac0bc +0 -0
  1049. package/vendor/libgit2/fuzzers/corpora/midx/66449b87ce47b681c6326f337bebf03366a0ee99 +0 -0
  1050. package/vendor/libgit2/fuzzers/corpora/midx/66ae3584497a1823a955c33e5bc53f7434c13e49 +0 -0
  1051. package/vendor/libgit2/fuzzers/corpora/midx/66e238a6ad70fb30c82171ff1b73ea71b4379355 +0 -0
  1052. package/vendor/libgit2/fuzzers/corpora/midx/66f345dc060ac5a1fe8bcf0828102d072deb1111 +0 -0
  1053. package/vendor/libgit2/fuzzers/corpora/midx/66f839146ef46deed25fd2cd169a4f1a2a3533fa +0 -0
  1054. package/vendor/libgit2/fuzzers/corpora/midx/671720ee2b7ba45920b41b8016eb5206b88168ee +0 -0
  1055. package/vendor/libgit2/fuzzers/corpora/midx/679c7140ad60ed32aeb7ee464499dd52b0fc212f +0 -0
  1056. package/vendor/libgit2/fuzzers/corpora/midx/67c5e6ce7bb47cefe54d749374f3288a2c915936 +0 -0
  1057. package/vendor/libgit2/fuzzers/corpora/midx/69592399b45f2f83e0cc823c5f0e3865ac3fa611 +0 -0
  1058. package/vendor/libgit2/fuzzers/corpora/midx/6abf97508f0ed808b7fe0d9bb2439981153badd2 +0 -0
  1059. package/vendor/libgit2/fuzzers/corpora/midx/6b2dfb51b35b78680cb02ff54e06f0c983c04866 +0 -0
  1060. package/vendor/libgit2/fuzzers/corpora/midx/6bbf6ab605fedd41ed6c7581ec9f87c75403e9c3 +0 -0
  1061. package/vendor/libgit2/fuzzers/corpora/midx/6c0656104902e1323f3a19c46df7cffecae94f1c +0 -0
  1062. package/vendor/libgit2/fuzzers/corpora/midx/6c0ce8006b3ebd8202e61fe5f4cc2285248bd1ba +0 -0
  1063. package/vendor/libgit2/fuzzers/corpora/midx/6cc635e6dd4e430ed4fb68a9f5add38aa02ae14f +0 -0
  1064. package/vendor/libgit2/fuzzers/corpora/midx/6d1b281d7bdd9887e53505fd5d040731db18ba48 +0 -0
  1065. package/vendor/libgit2/fuzzers/corpora/midx/6d5c35f9d87253b2fbe383bfde3775a9f737da12 +1 -0
  1066. package/vendor/libgit2/fuzzers/corpora/midx/6d95355018cadedd97bed65c45a44a7ff6f065f7 +0 -0
  1067. package/vendor/libgit2/fuzzers/corpora/midx/6dd70e887ab94db3327d9aaa0335914a1f4986b7 +0 -0
  1068. package/vendor/libgit2/fuzzers/corpora/midx/6ed51a953a8b6671de417406e340d8d0a211aa12 +0 -0
  1069. package/vendor/libgit2/fuzzers/corpora/midx/6f911f19652a4457c93ef92b594bc1dc2ca900f8 +0 -0
  1070. package/vendor/libgit2/fuzzers/corpora/midx/6fa76cbaeb3cf0417c7a372132167bcd737db66b +0 -0
  1071. package/vendor/libgit2/fuzzers/corpora/midx/71f66d3f7da318d69681a22ebbceb1a2bb290658 +0 -0
  1072. package/vendor/libgit2/fuzzers/corpora/midx/7227a2dc335af13e7225536c49969f46a800750a +1 -0
  1073. package/vendor/libgit2/fuzzers/corpora/midx/72fce27bbccf582f2023f5e168853251e576592a +0 -0
  1074. package/vendor/libgit2/fuzzers/corpora/midx/738e5543ae005a6de85dfcd960eb8e3e6faa8947 +0 -0
  1075. package/vendor/libgit2/fuzzers/corpora/midx/739d9c8868445202305d0a4e5766df1c68932688 +0 -0
  1076. package/vendor/libgit2/fuzzers/corpora/midx/7438b07314917c84d348e7d9629e3712190c7da7 +0 -0
  1077. package/vendor/libgit2/fuzzers/corpora/midx/7490f00d660f5d8dedfa606cca241bd07be86a4f +0 -0
  1078. package/vendor/libgit2/fuzzers/corpora/midx/75c64e8b61af41b28516c2c0fe902362d55a24f3 +0 -0
  1079. package/vendor/libgit2/fuzzers/corpora/midx/75e94b59a41e7f086b6f7ab3bca801251744ae3d +0 -0
  1080. package/vendor/libgit2/fuzzers/corpora/midx/7612ceb3a989f97a7bb19f57c7f9c61366953642 +0 -0
  1081. package/vendor/libgit2/fuzzers/corpora/midx/76ac2328e1c979bca648b4082b8bfe6f2e2e73ea +0 -0
  1082. package/vendor/libgit2/fuzzers/corpora/midx/76f296039ba4d666c9147ad234d43b55050808e3 +0 -0
  1083. package/vendor/libgit2/fuzzers/corpora/midx/777f248eea53e3dd2b726e1e0de5eeda43b6d323 +1 -0
  1084. package/vendor/libgit2/fuzzers/corpora/midx/792fcd0075bd8031a98a68ce04d6a9f23feef7b4 +0 -0
  1085. package/vendor/libgit2/fuzzers/corpora/midx/7a936c3e69013b2c71dcb72f0eccd99c93367533 +0 -0
  1086. package/vendor/libgit2/fuzzers/corpora/midx/7b30d0cd07108f2e45ce1a3fab3f971b25dcf5cd +0 -0
  1087. package/vendor/libgit2/fuzzers/corpora/midx/7b87f367b5fa3bf29bae19031814e5d0120a15ba +0 -0
  1088. package/vendor/libgit2/fuzzers/corpora/midx/7c12e4bca60858eae13c47a66e54cd9e96a50909 +0 -0
  1089. package/vendor/libgit2/fuzzers/corpora/midx/7c59f95e649b3be6344f4f835afd0d9a894c1144 +0 -0
  1090. package/vendor/libgit2/fuzzers/corpora/midx/7dcb6494c3614a8690dc496309f90e0f23634c37 +0 -0
  1091. package/vendor/libgit2/fuzzers/corpora/midx/7e64b86827ea98f0a4eb54736c460a59b0c30420 +0 -0
  1092. package/vendor/libgit2/fuzzers/corpora/midx/8125d9eaa09b3d2283fea73223866cb36877c4a4 +0 -0
  1093. package/vendor/libgit2/fuzzers/corpora/midx/81c7fc514fa9a07b5b87b94cf9c00df2b1325a74 +0 -0
  1094. package/vendor/libgit2/fuzzers/corpora/midx/81f9df0493052d980ca13918637bc6ce565615b3 +0 -0
  1095. package/vendor/libgit2/fuzzers/corpora/midx/82556b9345134dd689cb9d0d08d3dc8459454181 +0 -0
  1096. package/vendor/libgit2/fuzzers/corpora/midx/82d35a7a6ffb333b02d0d597e88ffdd481237a8b +0 -0
  1097. package/vendor/libgit2/fuzzers/corpora/midx/82e931da372a2c69c0f10274342173c2be091f1c +0 -0
  1098. package/vendor/libgit2/fuzzers/corpora/midx/83e2b53f22afe8f7ee21d30fae2619ad0d6a71e3 +0 -0
  1099. package/vendor/libgit2/fuzzers/corpora/midx/83f4d70189dbc0d3aaf5025977c53d4d34fc5893 +0 -0
  1100. package/vendor/libgit2/fuzzers/corpora/midx/85e17cceba7850be893afdc04c8233bea1ef6e72 +0 -0
  1101. package/vendor/libgit2/fuzzers/corpora/midx/874d4abdcd7db751eb930928231669afe90589f5 +0 -0
  1102. package/vendor/libgit2/fuzzers/corpora/midx/87894ec663568153d7837f49b80f6d2e99818bd7 +0 -0
  1103. package/vendor/libgit2/fuzzers/corpora/midx/88052b76108b4ede342f3dd87bb6835b2f71ea83 +0 -0
  1104. package/vendor/libgit2/fuzzers/corpora/midx/884c54256c0ec2cf1c5fa08a0b3d9c2fea021300 +0 -0
  1105. package/vendor/libgit2/fuzzers/corpora/midx/8858f36373db5fd6b805a768af55c21019c664b2 +0 -0
  1106. package/vendor/libgit2/fuzzers/corpora/midx/88fe8b6767c1bd32308208b22e0b00697e5eddf7 +0 -0
  1107. package/vendor/libgit2/fuzzers/corpora/midx/898cac1610f2f2fb67eb092cd053f0006c3070e3 +0 -0
  1108. package/vendor/libgit2/fuzzers/corpora/midx/89d0f5573ae1b524e7e9bdb1fb54ea4ce99e3ef0 +0 -0
  1109. package/vendor/libgit2/fuzzers/corpora/midx/8a55300e400efd56be5e12258ebf575c4f3b55ed +0 -0
  1110. package/vendor/libgit2/fuzzers/corpora/midx/8bf7b464aaa2c2b536aa1d76a1297c19155f5603 +1 -0
  1111. package/vendor/libgit2/fuzzers/corpora/midx/8c05e8ef26302a79c89670ad3aa4e8d0bc921923 +0 -0
  1112. package/vendor/libgit2/fuzzers/corpora/midx/8c15f5a268ded9663197d66e8d7d4098e0ae9bf5 +0 -0
  1113. package/vendor/libgit2/fuzzers/corpora/midx/8ca9e85a9e628f0016ea4e6413945b3830730c24 +0 -0
  1114. package/vendor/libgit2/fuzzers/corpora/midx/8e74126a239927900a8f655c813a4b230191a5ba +0 -0
  1115. package/vendor/libgit2/fuzzers/corpora/midx/8ee63e791c004427dd033b468b2ed7446ee6e2e0 +0 -0
  1116. package/vendor/libgit2/fuzzers/corpora/midx/9028113aa78b649e13ff259027a4e450d469e5da +0 -0
  1117. package/vendor/libgit2/fuzzers/corpora/midx/90db2115b8262ebecbefbe8f0a07c451e39bca07 +0 -0
  1118. package/vendor/libgit2/fuzzers/corpora/midx/923f28a4d1917e20ee0736b90695c2123c0c987c +0 -0
  1119. package/vendor/libgit2/fuzzers/corpora/midx/92a5c74e0506d65d1a12686496452870367b169a +0 -0
  1120. package/vendor/libgit2/fuzzers/corpora/midx/92dcf94eb2f92b4e1a232eab3b3f808f4236f118 +0 -0
  1121. package/vendor/libgit2/fuzzers/corpora/midx/9414502aedbef5e307897683625418dd4ac575ac +0 -0
  1122. package/vendor/libgit2/fuzzers/corpora/midx/9422e25bec5fec9f84603a85673b54b1a5e77a40 +0 -0
  1123. package/vendor/libgit2/fuzzers/corpora/midx/943754e865888063e0684aec838222522390d43e +0 -0
  1124. package/vendor/libgit2/fuzzers/corpora/midx/943e067806ae069afbc029ea7a612410e5395687 +0 -0
  1125. package/vendor/libgit2/fuzzers/corpora/midx/9547646cc1a5d260df099b00ea7ee2b95567aee1 +0 -0
  1126. package/vendor/libgit2/fuzzers/corpora/midx/968f7027ec9fbf75a519069ea5189e85a81448b2 +0 -0
  1127. package/vendor/libgit2/fuzzers/corpora/midx/9691046a2f8b31319a6fdfde0506c9a72aed839a +0 -0
  1128. package/vendor/libgit2/fuzzers/corpora/midx/96a8cd5c33986cc26cc00eb2de627149f5259e33 +0 -0
  1129. package/vendor/libgit2/fuzzers/corpora/midx/972466bbc33d2d7d7c21be21c7594b51e78675c5 +0 -0
  1130. package/vendor/libgit2/fuzzers/corpora/midx/980f21a3609762154030f7cf0fe98a892d20f220 +0 -0
  1131. package/vendor/libgit2/fuzzers/corpora/midx/9865f12189ef977418d8410fceebb6830c74d820 +0 -0
  1132. package/vendor/libgit2/fuzzers/corpora/midx/98a1096d609545083878d5126743bbc5985786a9 +0 -0
  1133. package/vendor/libgit2/fuzzers/corpora/midx/98c3b6bbf5dc19bc4aad894087277a36d7c79669 +0 -0
  1134. package/vendor/libgit2/fuzzers/corpora/midx/98f9cd44400b592f809596004125267acf848435 +0 -0
  1135. package/vendor/libgit2/fuzzers/corpora/midx/9a97260f04ecfe0918499ede95cf4bcb3dbc2b51 +0 -0
  1136. package/vendor/libgit2/fuzzers/corpora/midx/9ba0dba2ca4405d04113086309882dac6182e6b8 +0 -0
  1137. package/vendor/libgit2/fuzzers/corpora/midx/9c329ee4b02f2d26ee1a399c873b0452aedca3c0 +0 -0
  1138. package/vendor/libgit2/fuzzers/corpora/midx/9e8e638837e202d83ff606a22dd0e310150fa260 +0 -0
  1139. package/vendor/libgit2/fuzzers/corpora/midx/9ee03d17e070df72547e423a412da0b6a60ad565 +0 -0
  1140. package/vendor/libgit2/fuzzers/corpora/midx/9fad6bd2b07d65e607039bb2bcda0816410cf983 +0 -0
  1141. package/vendor/libgit2/fuzzers/corpora/midx/9fcbd21f4dd194a623d832422384a1519742f0bb +0 -0
  1142. package/vendor/libgit2/fuzzers/corpora/midx/a019fb7f17aa36a9743c530e1f11d5613b8b1158 +0 -0
  1143. package/vendor/libgit2/fuzzers/corpora/midx/a0b8c6ef20198377b19f59e41f08f4cf2107f460 +0 -0
  1144. package/vendor/libgit2/fuzzers/corpora/midx/a14079a3e8cbc2112da4fa747ef20cdfd580e068 +0 -0
  1145. package/vendor/libgit2/fuzzers/corpora/midx/a14d61ba0c609665d37e6c6da929cb53c5b70545 +0 -0
  1146. package/vendor/libgit2/fuzzers/corpora/midx/a15cf2a13e408cb76af0091a0c286af7ffce58e1 +0 -0
  1147. package/vendor/libgit2/fuzzers/corpora/midx/a1ddedbdd05eac99b8b31322635771cd9c999f8a +0 -0
  1148. package/vendor/libgit2/fuzzers/corpora/midx/a235661c3f8b0174a1658e9c435a69577c49256a +0 -0
  1149. package/vendor/libgit2/fuzzers/corpora/midx/a261397a4db5ac196c72d73ba6999e9fd4fc5c1f +0 -0
  1150. package/vendor/libgit2/fuzzers/corpora/midx/a3a803fd6a56d31269717983bbdf2fceebb626c3 +0 -0
  1151. package/vendor/libgit2/fuzzers/corpora/midx/a3d5b0b21d977e8f94d401250de1bbd4fa1d0ee0 +0 -0
  1152. package/vendor/libgit2/fuzzers/corpora/midx/a42f2900ca519bd15b8d6f507449d1a07de2ef75 +0 -0
  1153. package/vendor/libgit2/fuzzers/corpora/midx/a4884775b414eaf9643224564f3be405519cf99a +0 -0
  1154. package/vendor/libgit2/fuzzers/corpora/midx/a48da63e9a5709c24cb66f598a7a964cbc7ccfc7 +0 -0
  1155. package/vendor/libgit2/fuzzers/corpora/midx/a5789fd83dff18079ea7ba41c999f57bee4db41b +0 -0
  1156. package/vendor/libgit2/fuzzers/corpora/midx/a5bb1c60191742df4a91afb622e9b22a2f0b7765 +0 -0
  1157. package/vendor/libgit2/fuzzers/corpora/midx/a5fdfade1cef5e7e494dd6e3791bca5a663d7012 +0 -0
  1158. package/vendor/libgit2/fuzzers/corpora/midx/a6c66f79f5aaf2c1a26ff16754fe1a8c22627e0c +0 -0
  1159. package/vendor/libgit2/fuzzers/corpora/midx/a7478a05a1fc04a9e035be5593bfb6a281ec460f +0 -0
  1160. package/vendor/libgit2/fuzzers/corpora/midx/a75193dd600661d2b417d4e29b23faa7d721c214 +0 -0
  1161. package/vendor/libgit2/fuzzers/corpora/midx/a7ccae74c641ffcdda0042e6c04438d5b32c4cf3 +0 -0
  1162. package/vendor/libgit2/fuzzers/corpora/midx/a94aa5881abdea5374775b8155812121673f89c3 +0 -0
  1163. package/vendor/libgit2/fuzzers/corpora/midx/a98d794f0f24be7a36917826121fc14a24120893 +1 -0
  1164. package/vendor/libgit2/fuzzers/corpora/midx/a993077e321bc4e1831bb5a8ac7511d90d32ae27 +0 -0
  1165. package/vendor/libgit2/fuzzers/corpora/midx/aa3bc67656945e43f9342d3aaaef247584d96cfa +0 -0
  1166. package/vendor/libgit2/fuzzers/corpora/midx/ab111c4d72e3d6796e3d7391e9f35b4e6fefc04a +0 -0
  1167. package/vendor/libgit2/fuzzers/corpora/midx/ab248c42f77952d5d17d6f5203adaa5925c05c64 +0 -0
  1168. package/vendor/libgit2/fuzzers/corpora/midx/ab8451fadf805e5087837d9f6d91ef7eb6fa5edb +0 -0
  1169. package/vendor/libgit2/fuzzers/corpora/midx/abbee3b37aff879b1cef47390001b89b0f6ebc0a +0 -0
  1170. package/vendor/libgit2/fuzzers/corpora/midx/ac15b23f03af8be6dbbb3bbb8d3877a1f9e074a3 +0 -0
  1171. package/vendor/libgit2/fuzzers/corpora/midx/ac47bda12269c06d773f5f3c6517f78513a54a08 +0 -0
  1172. package/vendor/libgit2/fuzzers/corpora/midx/ad1f4fb57f481a00a9bb231517a3155ef0d0877f +0 -0
  1173. package/vendor/libgit2/fuzzers/corpora/midx/ad25e7ffabedd94833d2529886af4d459529ec9d +0 -0
  1174. package/vendor/libgit2/fuzzers/corpora/midx/ad796ebb423f58187806c4a7ee7b787394353ce6 +0 -0
  1175. package/vendor/libgit2/fuzzers/corpora/midx/adc83b19e793491b1c6ea0fd8b46cd9f32e592fc +1 -0
  1176. package/vendor/libgit2/fuzzers/corpora/midx/ae14b80f26f5cee2d85d5154c2cef1eefafa8cc9 +0 -0
  1177. package/vendor/libgit2/fuzzers/corpora/midx/ae3ba892de543801b3c1dfbce370eb2c80a6fb27 +0 -0
  1178. package/vendor/libgit2/fuzzers/corpora/midx/aecc0c7f08810803da234e26e7c6fa7a9f1c0593 +0 -0
  1179. package/vendor/libgit2/fuzzers/corpora/midx/aed2e85d5d39d25e738a34f30a722680bde30368 +0 -0
  1180. package/vendor/libgit2/fuzzers/corpora/midx/b00a75de1987c6f549bf73a63e8f23a2de6641b3 +0 -0
  1181. package/vendor/libgit2/fuzzers/corpora/midx/b02e9f951ce9f10a8eb80f1fc61cd3d2832dd7f4 +0 -0
  1182. package/vendor/libgit2/fuzzers/corpora/midx/b04aff8ab2e133d45bf44565bd4bf9e33b795a97 +0 -0
  1183. package/vendor/libgit2/fuzzers/corpora/midx/b12097ed83db761f7bb79411a59e2474de9b1199 +0 -0
  1184. package/vendor/libgit2/fuzzers/corpora/midx/b1beb2f462b4cb30a09d534b9f49f2e08d76363c +1 -0
  1185. package/vendor/libgit2/fuzzers/corpora/midx/b201733b6165f4544578bd6aad3f55aeafd9a194 +0 -0
  1186. package/vendor/libgit2/fuzzers/corpora/midx/b2699f25c21ffe453dcce20e31b3093e0f9b2abf +1 -0
  1187. package/vendor/libgit2/fuzzers/corpora/midx/b34a5760a1036f909e0243cd857fcef65e40d752 +0 -0
  1188. package/vendor/libgit2/fuzzers/corpora/midx/b3fdacd639073cc1954bcb1f31046d094e2d2296 +0 -0
  1189. package/vendor/libgit2/fuzzers/corpora/midx/b40a6dbe32c8e6a9b777331e7fd97f0d94ceca1c +0 -0
  1190. package/vendor/libgit2/fuzzers/corpora/midx/b52ff2010f22ae6758cde5d529fd19de2a7d5fc5 +0 -0
  1191. package/vendor/libgit2/fuzzers/corpora/midx/b53a7a2afd9dfc55c328b4e06a36882c53126e95 +0 -0
  1192. package/vendor/libgit2/fuzzers/corpora/midx/b548ae8a77a62b7f375b8b48e7184ceed59bc8f8 +0 -0
  1193. package/vendor/libgit2/fuzzers/corpora/midx/b66eaf0b689495cc7c194ab1fca7d36ae9da9758 +0 -0
  1194. package/vendor/libgit2/fuzzers/corpora/midx/b680bf23da22b8b7e77d847169fe9b6968d79e8b +1 -0
  1195. package/vendor/libgit2/fuzzers/corpora/midx/b70d6e7d230fb1393b8f665adcd5658cad7059fe +0 -0
  1196. package/vendor/libgit2/fuzzers/corpora/midx/b87a59f78adb3ef18b0176a8e7fe7e90c2ab4ef7 +0 -0
  1197. package/vendor/libgit2/fuzzers/corpora/midx/b88c5233090e859e923acbdfa9b168f95d7fc14b +0 -0
  1198. package/vendor/libgit2/fuzzers/corpora/midx/ba1923ea69eec8fe765e8d1222eccb928ca6c3c2 +0 -0
  1199. package/vendor/libgit2/fuzzers/corpora/midx/ba4d695c1eb02c702bd99a3db27838c7ba617d79 +0 -0
  1200. package/vendor/libgit2/fuzzers/corpora/midx/ba7e4f999dc22d223c7f75db36646bfa05848572 +0 -0
  1201. package/vendor/libgit2/fuzzers/corpora/midx/bc5f0cd338d1d17a230378390aa810bc7b103cda +0 -0
  1202. package/vendor/libgit2/fuzzers/corpora/midx/bcbb4cf10018a177dd9a6c642d887e0de3d8e522 +0 -0
  1203. package/vendor/libgit2/fuzzers/corpora/midx/bcfeb114df6d5c6e0c85cbe1081631bc321ff65b +0 -0
  1204. package/vendor/libgit2/fuzzers/corpora/midx/bd582237a9293e2a53d8222722a69e7d215822bf +0 -0
  1205. package/vendor/libgit2/fuzzers/corpora/midx/bdc83a415da40f74825379203538a2e4d27cffa7 +0 -0
  1206. package/vendor/libgit2/fuzzers/corpora/midx/be160536594c87dc07554a71c7d24cd1d718aecc +0 -0
  1207. package/vendor/libgit2/fuzzers/corpora/midx/be8f3c744a23f67fb316a39609ca11ddac025b58 +0 -0
  1208. package/vendor/libgit2/fuzzers/corpora/midx/bf873b027b48f3fd7b727473c832486d99ddb196 +0 -0
  1209. package/vendor/libgit2/fuzzers/corpora/midx/bf8e20ef6b79131ef9bab8c9c1bb7dbecbead6a5 +0 -0
  1210. package/vendor/libgit2/fuzzers/corpora/midx/bf90507b8f7c7eebb89edeaabf6a432d86e7df4a +0 -0
  1211. package/vendor/libgit2/fuzzers/corpora/midx/bfa7a5ce666899fb3e2a7216dbf59886da672658 +0 -0
  1212. package/vendor/libgit2/fuzzers/corpora/midx/bfeaa454d8db33efabba88f146bee6c803369ba0 +0 -0
  1213. package/vendor/libgit2/fuzzers/corpora/midx/c0388910e8d88dcd2e65848ba2cef465caa6b258 +0 -0
  1214. package/vendor/libgit2/fuzzers/corpora/midx/c0db293f75bb44668bcbb79286ebed87df141a85 +0 -0
  1215. package/vendor/libgit2/fuzzers/corpora/midx/c1234da1441255244aba15ecad2a4fa7fd47115e +0 -0
  1216. package/vendor/libgit2/fuzzers/corpora/midx/c2206ac3c289a759ee0e9d0d31cc336f0802f7bc +1 -0
  1217. package/vendor/libgit2/fuzzers/corpora/midx/c22340ab36e5cff088a58272f63cf69e54a1a9f4 +0 -0
  1218. package/vendor/libgit2/fuzzers/corpora/midx/c242c9336c4c22b316e0e56d616b2d45b3318ca4 +0 -0
  1219. package/vendor/libgit2/fuzzers/corpora/midx/c25a51d8dfaf58d5b609729bb156a80e3b0d892f +0 -0
  1220. package/vendor/libgit2/fuzzers/corpora/midx/c3419450240d06982b0d828911b188a903355216 +0 -0
  1221. package/vendor/libgit2/fuzzers/corpora/midx/c36ea7651f76ae817d8d60cae580e47638741372 +0 -0
  1222. package/vendor/libgit2/fuzzers/corpora/midx/c42300c021bfd35702f564e917839503922cbe9a +0 -0
  1223. package/vendor/libgit2/fuzzers/corpora/midx/c45d82ddade99ef857b563e435f2efe89e58b0be +0 -0
  1224. package/vendor/libgit2/fuzzers/corpora/midx/c4d1e9187de1e13353b3beb3c1ab16dd62cda571 +0 -0
  1225. package/vendor/libgit2/fuzzers/corpora/midx/c4e98278a25011c54734494d4534a97489cf4c24 +0 -0
  1226. package/vendor/libgit2/fuzzers/corpora/midx/c4f996ab08f56ce2e9fec7a0428ded510dd6a04a +0 -0
  1227. package/vendor/libgit2/fuzzers/corpora/midx/c544850a7325e7226583895204f99de730525803 +0 -0
  1228. package/vendor/libgit2/fuzzers/corpora/midx/c56629528d5bebdb94f85522caf0f36bbcb19106 +0 -0
  1229. package/vendor/libgit2/fuzzers/corpora/midx/c5c75b58883ccf41b20b140740e2ce763c6086cd +0 -0
  1230. package/vendor/libgit2/fuzzers/corpora/midx/c62da85dca0d4dfb1d7af5d0520eb74993a1e3b0 +0 -0
  1231. package/vendor/libgit2/fuzzers/corpora/midx/c6379aaaecd282b8ed6d0b4291d0d9fdc763160a +0 -0
  1232. package/vendor/libgit2/fuzzers/corpora/midx/c6431921184e3edf4fd3e47384c69654cdac0189 +0 -0
  1233. package/vendor/libgit2/fuzzers/corpora/midx/c6f2ca17c6d313a35676cbacd094eb40fd74b23e +0 -0
  1234. package/vendor/libgit2/fuzzers/corpora/midx/c83e04d58e04fccac37b9dd313eab72011fe8ea1 +0 -0
  1235. package/vendor/libgit2/fuzzers/corpora/midx/c88dc350b98a5c5ae0503683318c1f30443906a8 +1 -0
  1236. package/vendor/libgit2/fuzzers/corpora/midx/c89ee2e9e30a474b5f9532ec61d7aad78377baa0 +0 -0
  1237. package/vendor/libgit2/fuzzers/corpora/midx/c921be4abeb44d1ff07f76f632a16e86526bc4be +0 -0
  1238. package/vendor/libgit2/fuzzers/corpora/midx/c98bdc0431aaece1e8a721aff0ea511cfb8062a6 +0 -0
  1239. package/vendor/libgit2/fuzzers/corpora/midx/c9c456fd3e35a942ef4ab756e04e725cf1f71167 +0 -0
  1240. package/vendor/libgit2/fuzzers/corpora/midx/cd1f1a31b79af77e1e764102942ba7a79dcd24cf +0 -0
  1241. package/vendor/libgit2/fuzzers/corpora/midx/cd57e5904254c2278e9ecf28ed7414d7aed8eef1 +0 -0
  1242. package/vendor/libgit2/fuzzers/corpora/midx/cd665cdc2bd6a26eb68c9af6d1728a7d4f6eb309 +0 -0
  1243. package/vendor/libgit2/fuzzers/corpora/midx/ce72111c4314b22c4c7824bc8ea340ebd6d3fa84 +0 -0
  1244. package/vendor/libgit2/fuzzers/corpora/midx/ceacc7ace2f4be962b0db2eeeea3fe6a00ca9dd6 +0 -0
  1245. package/vendor/libgit2/fuzzers/corpora/midx/cf40769d8b4fcbac1b10ced2e0c3c1294f23fcdd +0 -0
  1246. package/vendor/libgit2/fuzzers/corpora/midx/d120111a77a3e3d1d504a04bbfc5f53effa14eb0 +0 -0
  1247. package/vendor/libgit2/fuzzers/corpora/midx/d1ce81240a32aec2de1b0d779aa29a62c36f291f +0 -0
  1248. package/vendor/libgit2/fuzzers/corpora/midx/d21869b290cd2b448e7b8103dced97e62fefffcc +0 -0
  1249. package/vendor/libgit2/fuzzers/corpora/midx/d2bffcd01e87ce9860007b244ff1e79ecd3d4d0f +0 -0
  1250. package/vendor/libgit2/fuzzers/corpora/midx/d2d668b6e28fca83da5146021879c2b006406fa4 +0 -0
  1251. package/vendor/libgit2/fuzzers/corpora/midx/d37abe0d299b8ad1e90f5b7af302c24f411a7ed1 +0 -0
  1252. package/vendor/libgit2/fuzzers/corpora/midx/d3d689a12ab3808313d5ba0044e8c67ecb4337e4 +0 -0
  1253. package/vendor/libgit2/fuzzers/corpora/midx/d48eb559213edf05aa2850a14194885ae2086ba4 +0 -0
  1254. package/vendor/libgit2/fuzzers/corpora/midx/d490f365693e49ebdeaf658b3f549311a399c6a8 +0 -0
  1255. package/vendor/libgit2/fuzzers/corpora/midx/d54821b652a8611c486bedd8645081d3a4b1c8d1 +0 -0
  1256. package/vendor/libgit2/fuzzers/corpora/midx/d5586a91f9a879e8a67ec7b09a48038909918ad9 +0 -0
  1257. package/vendor/libgit2/fuzzers/corpora/midx/d696362920a2fad8e280293e8d1c92b18c87e4ae +0 -0
  1258. package/vendor/libgit2/fuzzers/corpora/midx/d6b546a2b1bc1c8f80028e4be10c45a06014b32d +0 -0
  1259. package/vendor/libgit2/fuzzers/corpora/midx/d7f04cbca92b2122e0f437ed4dd8fd1782d40f7f +0 -0
  1260. package/vendor/libgit2/fuzzers/corpora/midx/d81944a0c1ed56d11129533d9a3d0d038113d53d +0 -0
  1261. package/vendor/libgit2/fuzzers/corpora/midx/d8524e83ea63c9b365c2e93af75a8100a08b1b69 +0 -0
  1262. package/vendor/libgit2/fuzzers/corpora/midx/d8d9a2d06763cf6feb433cef92a80ef14baab31a +0 -0
  1263. package/vendor/libgit2/fuzzers/corpora/midx/d917fbd641cc40786246387456a636899d56b5a6 +0 -0
  1264. package/vendor/libgit2/fuzzers/corpora/midx/d99f9ec8b504029457185ac03ea8ba21c2611737 +0 -0
  1265. package/vendor/libgit2/fuzzers/corpora/midx/d9c9c90c1bbc55beb81875838e9067c473d0fa92 +0 -0
  1266. package/vendor/libgit2/fuzzers/corpora/midx/d9e908317a6ef08a7528924672836a550d34cb5f +0 -0
  1267. package/vendor/libgit2/fuzzers/corpora/midx/d9ef71deb57fa6f40e027be2c84fa37d288e1cc5 +0 -0
  1268. package/vendor/libgit2/fuzzers/corpora/midx/da8841b9d04382d62d4aeb3fde4dc78466f31543 +0 -0
  1269. package/vendor/libgit2/fuzzers/corpora/midx/db3fbb74c9c9c4185f91eca85f14c3d2c3d9f487 +0 -0
  1270. package/vendor/libgit2/fuzzers/corpora/midx/db7a31de22258d4dc17d44a27d9340946e9c9ee9 +0 -0
  1271. package/vendor/libgit2/fuzzers/corpora/midx/dbbe57fc653930b4ff43f168565ba84ef25f60c2 +0 -0
  1272. package/vendor/libgit2/fuzzers/corpora/midx/dbe74c0d9e7b62c1fd87d5e3ea73ee04f0337154 +0 -0
  1273. package/vendor/libgit2/fuzzers/corpora/midx/dbebf36a6b91568ac059142c3ca3211226da12a8 +0 -0
  1274. package/vendor/libgit2/fuzzers/corpora/midx/ddacbb379242b31a00d62fdff5777dffc1e899c2 +0 -0
  1275. package/vendor/libgit2/fuzzers/corpora/midx/decd2cd9cef352610ac9e5cc461df1829543f9f0 +3 -0
  1276. package/vendor/libgit2/fuzzers/corpora/midx/deeae69363db06972798b296a0c5c99e02cb2b4c +0 -0
  1277. package/vendor/libgit2/fuzzers/corpora/midx/e03e105323e6e7b2af90ad876b5c547af90d8f6b +0 -0
  1278. package/vendor/libgit2/fuzzers/corpora/midx/e3133215848c9cde428338c9d51424c8a81b96f5 +0 -0
  1279. package/vendor/libgit2/fuzzers/corpora/midx/e32a25f0347b0e95d4bea16c27a1f374847683bd +0 -0
  1280. package/vendor/libgit2/fuzzers/corpora/midx/e45ce97522194abcdd7ff9beb931e20b86c97a79 +0 -0
  1281. package/vendor/libgit2/fuzzers/corpora/midx/e484023d50fc1036e46a437053b965c527700d42 +0 -0
  1282. package/vendor/libgit2/fuzzers/corpora/midx/e4e60e77fe3a050940d0afcc7dbab7ef06b04ba3 +0 -0
  1283. package/vendor/libgit2/fuzzers/corpora/midx/e51629784092d9cf811ea1bd894297f062ed7ec4 +0 -0
  1284. package/vendor/libgit2/fuzzers/corpora/midx/e5a7e837029178b3fb6a26d77ea4574ffeaa219d +0 -0
  1285. package/vendor/libgit2/fuzzers/corpora/midx/e5c616e9efdd9c80181f9210d0e3a81c08fe9b4d +0 -0
  1286. package/vendor/libgit2/fuzzers/corpora/midx/e5e6e84e2c7770537c744bcfdbe8303afe39ef92 +0 -0
  1287. package/vendor/libgit2/fuzzers/corpora/midx/e5fb20928feec1ee3114597317edc0e06c413749 +0 -0
  1288. package/vendor/libgit2/fuzzers/corpora/midx/e789319791fe704e5a8ffd7cb570c8d2722ac35f +0 -0
  1289. package/vendor/libgit2/fuzzers/corpora/midx/e9fdb9f08f225b4231f01dda9c7b61e7b78bf7d3 +0 -0
  1290. package/vendor/libgit2/fuzzers/corpora/midx/ea6780324dca9a06db28598dfb590436d846d99f +0 -0
  1291. package/vendor/libgit2/fuzzers/corpora/midx/ea6afcc92b8a6c9e14cc053d351909ad5b0a3fdf +0 -0
  1292. package/vendor/libgit2/fuzzers/corpora/midx/ea8c569029c0cacc4ae75e95b2f4e84abb6867f4 +0 -0
  1293. package/vendor/libgit2/fuzzers/corpora/midx/eb3e80c3ea9cfe9e08b2eef117aaa522a51a619c +0 -0
  1294. package/vendor/libgit2/fuzzers/corpora/midx/ec55b30741fe8fffeec584176c8d20f6a679cfa1 +0 -0
  1295. package/vendor/libgit2/fuzzers/corpora/midx/ed0724a6c3804a3ab20a980b5ca48671689a602f +0 -0
  1296. package/vendor/libgit2/fuzzers/corpora/midx/edeb545d1cf852dc9582fa764010fe844a5e3515 +0 -0
  1297. package/vendor/libgit2/fuzzers/corpora/midx/ee70b920de91f1be6b4448070ee2d1bd9e08286d +0 -0
  1298. package/vendor/libgit2/fuzzers/corpora/midx/ef004af4e947d25b4d1d1dd16502260d4c7a99cd +0 -0
  1299. package/vendor/libgit2/fuzzers/corpora/midx/f009d226503b73aed0f1fd952ef8725433d158be +0 -0
  1300. package/vendor/libgit2/fuzzers/corpora/midx/f0a821dffe21afd357932febaf6e8ee331f53197 +0 -0
  1301. package/vendor/libgit2/fuzzers/corpora/midx/f101a2fe93dfaaed1c596022b4e509cf3a591c8a +0 -0
  1302. package/vendor/libgit2/fuzzers/corpora/midx/f1101f71657385174f8cb920026a761404b4395d +0 -0
  1303. package/vendor/libgit2/fuzzers/corpora/midx/f138c84e42d3cc61a219c4be9db791750f0541c8 +1 -0
  1304. package/vendor/libgit2/fuzzers/corpora/midx/f1da273522bfff4a4971b4ffc31e365f60fdbbfe +0 -0
  1305. package/vendor/libgit2/fuzzers/corpora/midx/f2fe69d30ec47e78a9e92f1423698a52270672b2 +0 -0
  1306. package/vendor/libgit2/fuzzers/corpora/midx/f368bb6f633587a7bb271de7e20695f178c89686 +0 -0
  1307. package/vendor/libgit2/fuzzers/corpora/midx/f38ced5a16edaceb5f527ebc35e7870f42586c90 +0 -0
  1308. package/vendor/libgit2/fuzzers/corpora/midx/f404371362ae68ffb2837ce1766346ebb645d173 +0 -0
  1309. package/vendor/libgit2/fuzzers/corpora/midx/f473b5e1cf51502345f5c1840ec3948d308dd314 +0 -0
  1310. package/vendor/libgit2/fuzzers/corpora/midx/f4ad43d6f913c3be6243dfc439e4b6f5b2e814b9 +0 -0
  1311. package/vendor/libgit2/fuzzers/corpora/midx/f4cde4083a974d755a38bf5ea3820f78b576754a +0 -0
  1312. package/vendor/libgit2/fuzzers/corpora/midx/f5888d0dcacda196d73772aabc18fe2ad6e1dfa2 +0 -0
  1313. package/vendor/libgit2/fuzzers/corpora/midx/f5c3577a62d401f071d5edaa77c54ae98d6a0318 +1 -0
  1314. package/vendor/libgit2/fuzzers/corpora/midx/f5dee0d9da0d6950069ac36b1880090a20f50f3e +0 -0
  1315. package/vendor/libgit2/fuzzers/corpora/midx/f605fff495fef2719585c706c05c350812402a35 +0 -0
  1316. package/vendor/libgit2/fuzzers/corpora/midx/f6fdaf4e77e29c780b9e0b91637777575bebfab4 +0 -0
  1317. package/vendor/libgit2/fuzzers/corpora/midx/f72700bd65fa86c588607ec50d60a9c684c86f43 +0 -0
  1318. package/vendor/libgit2/fuzzers/corpora/midx/f777db12ef18f002febd5af13e2b948c95d964c3 +0 -0
  1319. package/vendor/libgit2/fuzzers/corpora/midx/f777e9274d508e7ac1069e2a04bedc042942491c +0 -0
  1320. package/vendor/libgit2/fuzzers/corpora/midx/f81306f8ceaec3d06d5d34afa9769d15f0d209eb +0 -0
  1321. package/vendor/libgit2/fuzzers/corpora/midx/f84c2b36689f22809d9bda00febab557c381ffa4 +0 -0
  1322. package/vendor/libgit2/fuzzers/corpora/midx/f98168fa74c26b17ad0c3002f2263beb0af7c0ce +0 -0
  1323. package/vendor/libgit2/fuzzers/corpora/midx/fa6759d6a2807bbad83ba21761772c0119122c35 +0 -0
  1324. package/vendor/libgit2/fuzzers/corpora/midx/fa8b927b25a67fa3d60b12c53ac365366cc2b52d +0 -0
  1325. package/vendor/libgit2/fuzzers/corpora/midx/fc5e4b78e59daebed1118389b57a386981f2430e +0 -0
  1326. package/vendor/libgit2/fuzzers/corpora/midx/fdaf408880429153cfcf5d978727cd7b84c3d60e +0 -0
  1327. package/vendor/libgit2/fuzzers/corpora/midx/fe50e7564a28683b24c57f8bcdcb3fbfa61f5c6a +0 -0
  1328. package/vendor/libgit2/fuzzers/corpora/midx/fe64b998872d3ad87df2019173ddc52686841d7d +0 -0
  1329. package/vendor/libgit2/fuzzers/corpora/midx/fec56c7cc86871aaa9c7a947c4084307cac2778d +0 -0
  1330. package/vendor/libgit2/fuzzers/corpora/midx/ff164dfc56dd28709488130dc6dfc17406bf9e9d +0 -0
  1331. package/vendor/libgit2/fuzzers/corpora/midx/ff7035b3c055718728a6025b3cdf55c34c4c744b +0 -0
  1332. package/vendor/libgit2/fuzzers/midx_fuzzer.c +76 -0
  1333. package/vendor/libgit2/git.git-authors +2 -2
  1334. package/vendor/libgit2/include/git2/annotated_commit.h +1 -1
  1335. package/vendor/libgit2/include/git2/blob.h +18 -2
  1336. package/vendor/libgit2/include/git2/branch.h +12 -0
  1337. package/vendor/libgit2/include/git2/cert.h +41 -5
  1338. package/vendor/libgit2/include/git2/config.h +1 -1
  1339. package/vendor/libgit2/include/git2/deprecated.h +102 -8
  1340. package/vendor/libgit2/include/git2/index.h +1 -1
  1341. package/vendor/libgit2/include/git2/patch.h +8 -0
  1342. package/vendor/libgit2/include/git2/refs.h +6 -5
  1343. package/vendor/libgit2/include/git2/remote.h +3 -2
  1344. package/vendor/libgit2/include/git2/repository.h +95 -52
  1345. package/vendor/libgit2/include/git2/revparse.h +5 -5
  1346. package/vendor/libgit2/include/git2/tag.h +12 -0
  1347. package/vendor/libgit2/include/git2/transport.h +1 -1
  1348. package/vendor/libgit2/include/git2/tree.h +0 -14
  1349. package/vendor/libgit2/include/git2/version.h +3 -3
  1350. package/vendor/libgit2/package.json +1 -1
  1351. package/vendor/libgit2/script/thread-sanitizer.supp +26 -0
  1352. package/vendor/libgit2/src/CMakeLists.txt +13 -2
  1353. package/vendor/libgit2/src/alloc.c +21 -8
  1354. package/vendor/libgit2/src/allocators/failalloc.c +92 -0
  1355. package/vendor/libgit2/src/allocators/failalloc.h +23 -0
  1356. package/vendor/libgit2/src/allocators/win32_leakcheck.c +118 -0
  1357. package/vendor/libgit2/src/allocators/{win32_crtdbg.h → win32_leakcheck.h} +3 -3
  1358. package/vendor/libgit2/src/annotated_commit.c +21 -9
  1359. package/vendor/libgit2/src/apply.c +16 -7
  1360. package/vendor/libgit2/src/attr.c +12 -3
  1361. package/vendor/libgit2/src/attr_file.c +8 -5
  1362. package/vendor/libgit2/src/attrcache.c +5 -5
  1363. package/vendor/libgit2/src/blame.c +26 -15
  1364. package/vendor/libgit2/src/blob.c +32 -12
  1365. package/vendor/libgit2/src/branch.c +57 -15
  1366. package/vendor/libgit2/src/buf_text.c +2 -2
  1367. package/vendor/libgit2/src/buffer.c +25 -14
  1368. package/vendor/libgit2/src/buffer.h +2 -2
  1369. package/vendor/libgit2/src/cache.c +3 -3
  1370. package/vendor/libgit2/src/cache.h +7 -7
  1371. package/vendor/libgit2/src/cc-compat.h +1 -1
  1372. package/vendor/libgit2/src/checkout.c +66 -63
  1373. package/vendor/libgit2/src/cherrypick.c +6 -2
  1374. package/vendor/libgit2/src/clone.c +109 -25
  1375. package/vendor/libgit2/src/commit.c +41 -28
  1376. package/vendor/libgit2/src/commit_graph.c +470 -0
  1377. package/vendor/libgit2/src/commit_graph.h +116 -0
  1378. package/vendor/libgit2/src/common.h +4 -2
  1379. package/vendor/libgit2/src/config.c +38 -19
  1380. package/vendor/libgit2/src/config_cache.c +8 -4
  1381. package/vendor/libgit2/src/config_file.c +2 -2
  1382. package/vendor/libgit2/src/config_parse.c +2 -2
  1383. package/vendor/libgit2/src/custom_tls.c +4 -4
  1384. package/vendor/libgit2/src/date.c +2 -1
  1385. package/vendor/libgit2/src/delta.c +1 -1
  1386. package/vendor/libgit2/src/describe.c +7 -4
  1387. package/vendor/libgit2/src/diff.c +11 -8
  1388. package/vendor/libgit2/src/diff_driver.c +2 -2
  1389. package/vendor/libgit2/src/diff_generate.c +45 -15
  1390. package/vendor/libgit2/src/diff_print.c +19 -6
  1391. package/vendor/libgit2/src/diff_stats.c +13 -10
  1392. package/vendor/libgit2/src/diff_tform.c +7 -6
  1393. package/vendor/libgit2/src/errors.c +24 -14
  1394. package/vendor/libgit2/src/features.h.in +1 -1
  1395. package/vendor/libgit2/src/fetch.c +5 -2
  1396. package/vendor/libgit2/src/fetchhead.c +8 -4
  1397. package/vendor/libgit2/src/filebuf.c +9 -7
  1398. package/vendor/libgit2/src/filter.c +31 -25
  1399. package/vendor/libgit2/src/futils.c +5 -5
  1400. package/vendor/libgit2/src/hash/sha1/collisiondetect.c +3 -3
  1401. package/vendor/libgit2/src/hash/sha1/common_crypto.c +3 -3
  1402. package/vendor/libgit2/src/hash/sha1/mbedtls.c +12 -12
  1403. package/vendor/libgit2/src/hash/sha1/openssl.c +3 -3
  1404. package/vendor/libgit2/src/hash/sha1/win32.c +15 -11
  1405. package/vendor/libgit2/src/hash.c +11 -8
  1406. package/vendor/libgit2/src/hashsig.c +20 -9
  1407. package/vendor/libgit2/src/ignore.c +6 -2
  1408. package/vendor/libgit2/src/index.c +109 -72
  1409. package/vendor/libgit2/src/index.h +1 -1
  1410. package/vendor/libgit2/src/indexer.c +50 -32
  1411. package/vendor/libgit2/src/integer.h +77 -0
  1412. package/vendor/libgit2/src/iterator.c +28 -20
  1413. package/vendor/libgit2/src/iterator.h +1 -1
  1414. package/vendor/libgit2/src/{settings.c → libgit2.c} +116 -46
  1415. package/vendor/libgit2/src/libgit2.h +15 -0
  1416. package/vendor/libgit2/src/mailmap.c +19 -10
  1417. package/vendor/libgit2/src/map.h +3 -3
  1418. package/vendor/libgit2/src/merge.c +53 -21
  1419. package/vendor/libgit2/src/merge_driver.c +19 -13
  1420. package/vendor/libgit2/src/merge_file.c +11 -3
  1421. package/vendor/libgit2/src/message.c +3 -1
  1422. package/vendor/libgit2/src/midx.c +477 -0
  1423. package/vendor/libgit2/src/midx.h +94 -0
  1424. package/vendor/libgit2/src/mwindow.c +110 -61
  1425. package/vendor/libgit2/src/mwindow.h +3 -3
  1426. package/vendor/libgit2/src/net.c +15 -4
  1427. package/vendor/libgit2/src/net.h +5 -2
  1428. package/vendor/libgit2/src/netops.c +6 -4
  1429. package/vendor/libgit2/src/netops.h +1 -1
  1430. package/vendor/libgit2/src/notes.c +10 -10
  1431. package/vendor/libgit2/src/object.c +22 -14
  1432. package/vendor/libgit2/src/odb.c +197 -40
  1433. package/vendor/libgit2/src/odb.h +1 -0
  1434. package/vendor/libgit2/src/odb_loose.c +28 -18
  1435. package/vendor/libgit2/src/odb_mempack.c +1 -1
  1436. package/vendor/libgit2/src/odb_pack.c +317 -114
  1437. package/vendor/libgit2/src/oid.c +5 -4
  1438. package/vendor/libgit2/src/pack-objects.c +36 -36
  1439. package/vendor/libgit2/src/pack.c +272 -132
  1440. package/vendor/libgit2/src/pack.h +19 -7
  1441. package/vendor/libgit2/src/patch.c +14 -7
  1442. package/vendor/libgit2/src/patch_generate.c +3 -5
  1443. package/vendor/libgit2/src/patch_parse.c +4 -2
  1444. package/vendor/libgit2/src/path.c +44 -43
  1445. package/vendor/libgit2/src/path.h +0 -2
  1446. package/vendor/libgit2/src/pathspec.c +6 -5
  1447. package/vendor/libgit2/src/pool.c +28 -20
  1448. package/vendor/libgit2/src/pool.h +8 -0
  1449. package/vendor/libgit2/src/posix.c +36 -12
  1450. package/vendor/libgit2/src/posix.h +9 -0
  1451. package/vendor/libgit2/src/reader.c +9 -4
  1452. package/vendor/libgit2/src/rebase.c +26 -18
  1453. package/vendor/libgit2/src/refdb.c +30 -13
  1454. package/vendor/libgit2/src/refdb_fs.c +59 -33
  1455. package/vendor/libgit2/src/reflog.c +19 -14
  1456. package/vendor/libgit2/src/refs.c +92 -44
  1457. package/vendor/libgit2/src/refs.h +1 -2
  1458. package/vendor/libgit2/src/refspec.c +80 -44
  1459. package/vendor/libgit2/src/remote.c +137 -72
  1460. package/vendor/libgit2/src/repository.c +170 -92
  1461. package/vendor/libgit2/src/repository.h +8 -2
  1462. package/vendor/libgit2/src/reset.c +7 -6
  1463. package/vendor/libgit2/src/revert.c +6 -2
  1464. package/vendor/libgit2/src/revparse.c +14 -9
  1465. package/vendor/libgit2/src/revwalk.c +32 -15
  1466. package/vendor/libgit2/src/runtime.c +162 -0
  1467. package/vendor/libgit2/src/runtime.h +62 -0
  1468. package/vendor/libgit2/src/settings.h +11 -0
  1469. package/vendor/libgit2/src/signature.c +6 -5
  1470. package/vendor/libgit2/src/sortedcache.h +1 -1
  1471. package/vendor/libgit2/src/stash.c +3 -1
  1472. package/vendor/libgit2/src/status.c +7 -4
  1473. package/vendor/libgit2/src/strarray.c +2 -1
  1474. package/vendor/libgit2/src/streams/mbedtls.c +8 -8
  1475. package/vendor/libgit2/src/streams/openssl.c +13 -10
  1476. package/vendor/libgit2/src/streams/registry.c +5 -6
  1477. package/vendor/libgit2/src/streams/socket.c +6 -2
  1478. package/vendor/libgit2/src/streams/stransport.c +6 -3
  1479. package/vendor/libgit2/src/streams/tls.c +5 -3
  1480. package/vendor/libgit2/src/submodule.c +89 -33
  1481. package/vendor/libgit2/src/submodule.h +9 -9
  1482. package/vendor/libgit2/src/sysdir.c +8 -7
  1483. package/vendor/libgit2/src/tag.c +47 -11
  1484. package/vendor/libgit2/src/thread.c +140 -0
  1485. package/vendor/libgit2/src/thread.h +422 -0
  1486. package/vendor/libgit2/src/threadstate.c +83 -0
  1487. package/vendor/libgit2/src/threadstate.h +24 -0
  1488. package/vendor/libgit2/src/trace.c +2 -2
  1489. package/vendor/libgit2/src/transaction.c +19 -8
  1490. package/vendor/libgit2/src/transport.c +3 -3
  1491. package/vendor/libgit2/src/transports/auth_negotiate.c +10 -3
  1492. package/vendor/libgit2/src/transports/auth_ntlm.c +8 -4
  1493. package/vendor/libgit2/src/transports/credential.c +15 -7
  1494. package/vendor/libgit2/src/transports/git.c +1 -3
  1495. package/vendor/libgit2/src/transports/http.c +6 -6
  1496. package/vendor/libgit2/src/transports/http.h +1 -0
  1497. package/vendor/libgit2/src/transports/httpclient.c +59 -34
  1498. package/vendor/libgit2/src/transports/local.c +3 -3
  1499. package/vendor/libgit2/src/transports/smart.c +10 -7
  1500. package/vendor/libgit2/src/transports/smart.h +1 -1
  1501. package/vendor/libgit2/src/transports/smart_protocol.c +9 -4
  1502. package/vendor/libgit2/src/transports/ssh.c +47 -13
  1503. package/vendor/libgit2/src/transports/winhttp.c +98 -58
  1504. package/vendor/libgit2/src/tree.c +97 -75
  1505. package/vendor/libgit2/src/tree.h +1 -0
  1506. package/vendor/libgit2/src/tsort.c +0 -2
  1507. package/vendor/libgit2/src/unix/map.c +3 -1
  1508. package/vendor/libgit2/src/unix/posix.h +16 -1
  1509. package/vendor/libgit2/src/unix/pthread.c +27 -6
  1510. package/vendor/libgit2/src/unix/pthread.h +2 -2
  1511. package/vendor/libgit2/src/util.c +53 -12
  1512. package/vendor/libgit2/src/util.h +11 -7
  1513. package/vendor/libgit2/src/vector.c +23 -19
  1514. package/vendor/libgit2/src/win32/findfile.c +4 -2
  1515. package/vendor/libgit2/src/win32/map.c +1 -1
  1516. package/vendor/libgit2/src/win32/msvc-compat.h +9 -1
  1517. package/vendor/libgit2/src/win32/path_w32.c +6 -8
  1518. package/vendor/libgit2/src/win32/posix_w32.c +70 -1
  1519. package/vendor/libgit2/src/win32/precompiled.h +0 -1
  1520. package/vendor/libgit2/src/win32/thread.c +27 -18
  1521. package/vendor/libgit2/src/win32/thread.h +1 -1
  1522. package/vendor/libgit2/src/win32/w32_buffer.c +3 -3
  1523. package/vendor/libgit2/src/win32/w32_leakcheck.c +576 -0
  1524. package/vendor/libgit2/src/win32/w32_leakcheck.h +220 -0
  1525. package/vendor/libgit2/src/worktree.c +27 -12
  1526. package/vendor/libgit2/src/zstream.c +1 -1
  1527. package/vendor/libgit2/tests/clar/fs.h +3 -3
  1528. package/vendor/libgit2/tests/clar/sandbox.h +7 -4
  1529. package/vendor/libgit2/tests/clar_libgit2.c +4 -3
  1530. package/vendor/libgit2/tests/clar_libgit2_trace.c +2 -2
  1531. package/vendor/libgit2/tests/clone/empty.c +17 -0
  1532. package/vendor/libgit2/tests/clone/nonetwork.c +8 -0
  1533. package/vendor/libgit2/tests/config/read.c +76 -0
  1534. package/vendor/libgit2/tests/config/stress.c +5 -0
  1535. package/vendor/libgit2/tests/core/integer.c +253 -0
  1536. package/vendor/libgit2/tests/core/path.c +1 -27
  1537. package/vendor/libgit2/tests/core/strtol.c +2 -0
  1538. package/vendor/libgit2/tests/core/structinit.c +5 -0
  1539. package/vendor/libgit2/tests/core/useragent.c +1 -1
  1540. package/vendor/libgit2/tests/diff/format_email.c +1 -2
  1541. package/vendor/libgit2/tests/diff/parse.c +23 -0
  1542. package/vendor/libgit2/tests/diff/stats.c +36 -2
  1543. package/vendor/libgit2/tests/fetchhead/nonetwork.c +29 -0
  1544. package/vendor/libgit2/tests/filter/bare.c +1 -1
  1545. package/vendor/libgit2/tests/graph/commit_graph.c +90 -0
  1546. package/vendor/libgit2/tests/network/refspecs.c +1 -1
  1547. package/vendor/libgit2/tests/network/remote/isvalidname.c +15 -8
  1548. package/vendor/libgit2/tests/network/urlparse.c +401 -12
  1549. package/vendor/libgit2/tests/online/badssl.c +2 -7
  1550. package/vendor/libgit2/tests/online/clone.c +28 -1
  1551. package/vendor/libgit2/tests/online/push_util.c +3 -1
  1552. package/vendor/libgit2/tests/pack/filelimit.c +1 -1
  1553. package/vendor/libgit2/tests/pack/midx.c +46 -0
  1554. package/vendor/libgit2/tests/pack/threadsafety.c +62 -0
  1555. package/vendor/libgit2/tests/refs/branches/name.c +17 -0
  1556. package/vendor/libgit2/tests/refs/isvalidname.c +29 -22
  1557. package/vendor/libgit2/tests/refs/revparse.c +13 -13
  1558. package/vendor/libgit2/tests/refs/tags/name.c +17 -0
  1559. package/vendor/libgit2/tests/repo/getters.c +13 -0
  1560. package/vendor/libgit2/tests/repo/init.c +120 -81
  1561. package/vendor/libgit2/tests/resources/config/config12 +10 -0
  1562. package/vendor/libgit2/tests/resources/describe/.gitted/refs/tags/A +1 -0
  1563. package/vendor/libgit2/tests/resources/describe/.gitted/refs/tags/B +1 -0
  1564. package/vendor/libgit2/tests/resources/describe/.gitted/refs/tags/D +1 -0
  1565. package/vendor/libgit2/tests/resources/describe/.gitted/refs/tags/R +1 -0
  1566. package/vendor/libgit2/tests/resources/describe/.gitted/refs/tags/c +1 -0
  1567. package/vendor/libgit2/tests/resources/describe/.gitted/refs/tags/e +1 -0
  1568. package/vendor/libgit2/tests/resources/empty_bare.git/refs/tags/dummy-marker.txt +0 -0
  1569. package/vendor/libgit2/tests/resources/empty_standard_repo/.gitted/refs/tags/dummy-marker.txt +0 -0
  1570. package/vendor/libgit2/tests/resources/merge-recursive/.gitted/objects/info/commit-graph +0 -0
  1571. package/vendor/libgit2/tests/resources/push_src/.gitted/refs/tags/tag-blob +1 -0
  1572. package/vendor/libgit2/tests/resources/push_src/.gitted/refs/tags/tag-commit +1 -0
  1573. package/vendor/libgit2/tests/resources/push_src/.gitted/refs/tags/tag-commit-two +1 -0
  1574. package/vendor/libgit2/tests/resources/push_src/.gitted/refs/tags/tag-lightweight +1 -0
  1575. package/vendor/libgit2/tests/resources/push_src/.gitted/refs/tags/tag-tag +1 -0
  1576. package/vendor/libgit2/tests/resources/push_src/.gitted/refs/tags/tag-tree +1 -0
  1577. package/vendor/libgit2/tests/resources/testrepo/.gitted/refs/tags/e90810b +1 -0
  1578. package/vendor/libgit2/tests/resources/testrepo/.gitted/refs/tags/foo/bar +1 -0
  1579. package/vendor/libgit2/tests/resources/testrepo/.gitted/refs/tags/foo/foo/bar +1 -0
  1580. package/vendor/libgit2/tests/resources/testrepo/.gitted/refs/tags/point_to_blob +1 -0
  1581. package/vendor/libgit2/tests/resources/testrepo/.gitted/refs/tags/test +1 -0
  1582. package/vendor/libgit2/tests/resources/testrepo.git/objects/info/commit-graph +0 -0
  1583. package/vendor/libgit2/tests/resources/testrepo.git/objects/pack/multi-pack-index +0 -0
  1584. package/vendor/libgit2/tests/resources/testrepo.git/refs/tags/annotated_tag_to_blob +1 -0
  1585. package/vendor/libgit2/tests/resources/testrepo.git/refs/tags/e90810b +1 -0
  1586. package/vendor/libgit2/tests/resources/testrepo.git/refs/tags/hard_tag +1 -0
  1587. package/vendor/libgit2/tests/resources/testrepo.git/refs/tags/point_to_blob +1 -0
  1588. package/vendor/libgit2/tests/resources/testrepo.git/refs/tags/taggerless +1 -0
  1589. package/vendor/libgit2/tests/resources/testrepo.git/refs/tags/test +1 -0
  1590. package/vendor/libgit2/tests/resources/testrepo.git/refs/tags/wrapped_tag +1 -0
  1591. package/vendor/libgit2/tests/threads/basic.c +7 -1
  1592. package/vendor/libgit2/tests/threads/diff.c +9 -9
  1593. package/vendor/libgit2/tests/threads/thread_helpers.h +1 -1
  1594. package/vendor/libgit2/tests/threads/tlsdata.c +65 -0
  1595. package/vendor/libgit2/tests/trace/windows/stacktrace.c +53 -53
  1596. package/vendor/libgit2/tests/worktree/worktree.c +12 -0
  1597. package/vendor/libgit2.gyp +35 -18
  1598. package/vendor/libssh2/CMakeLists.txt +8 -0
  1599. package/vendor/libssh2/COPYING +3 -1
  1600. package/vendor/libssh2/Makefile.am +5 -3
  1601. package/vendor/libssh2/Makefile.in +29 -15
  1602. package/vendor/libssh2/Makefile.inc +2 -2
  1603. package/vendor/libssh2/NEWS +1376 -486
  1604. package/vendor/libssh2/RELEASE-NOTES +56 -38
  1605. package/vendor/libssh2/acinclude.m4 +1 -0
  1606. package/vendor/libssh2/aclocal.m4 +44 -33
  1607. package/vendor/libssh2/compile +3 -3
  1608. package/vendor/libssh2/configure +9704 -4102
  1609. package/vendor/libssh2/configure.ac +20 -8
  1610. package/vendor/libssh2/depcomp +1 -1
  1611. package/vendor/libssh2/docs/{HACKING.CRYPTO → HACKING-CRYPTO} +312 -49
  1612. package/vendor/libssh2/docs/INSTALL_AUTOTOOLS +2 -2
  1613. package/vendor/libssh2/docs/Makefile.am +2 -2
  1614. package/vendor/libssh2/docs/Makefile.in +14 -7
  1615. package/vendor/libssh2/docs/libssh2_session_callback_set.3 +36 -4
  1616. package/vendor/libssh2/example/CMakeLists.txt +1 -0
  1617. package/vendor/libssh2/example/Makefile.am +3 -3
  1618. package/vendor/libssh2/example/Makefile.in +49 -42
  1619. package/vendor/libssh2/example/ssh2_agent_forwarding.c +292 -0
  1620. package/vendor/libssh2/include/libssh2.h +18 -13
  1621. package/vendor/libssh2/include/libssh2_sftp.h +26 -26
  1622. package/vendor/libssh2/install-sh +92 -69
  1623. package/vendor/libssh2/ltmain.sh +6 -4
  1624. package/vendor/libssh2/m4/libtool.m4 +5 -5
  1625. package/vendor/libssh2/missing +1 -1
  1626. package/vendor/libssh2/src/CMakeLists.txt +8 -2
  1627. package/vendor/libssh2/src/Makefile.in +25 -17
  1628. package/vendor/libssh2/src/agent.c +60 -63
  1629. package/vendor/libssh2/src/agent.h +112 -0
  1630. package/vendor/libssh2/src/agent_win.c +361 -0
  1631. package/vendor/libssh2/src/bcrypt_pbkdf.c +3 -3
  1632. package/vendor/libssh2/src/blf.h +3 -4
  1633. package/vendor/libssh2/src/channel.c +158 -1
  1634. package/vendor/libssh2/src/comp.c +2 -1
  1635. package/vendor/libssh2/src/comp.h +0 -1
  1636. package/vendor/libssh2/src/crypto.h +6 -6
  1637. package/vendor/libssh2/src/global.c +2 -1
  1638. package/vendor/libssh2/src/hostkey.c +41 -2
  1639. package/vendor/libssh2/src/kex.c +691 -974
  1640. package/vendor/libssh2/src/knownhost.c +2 -2
  1641. package/vendor/libssh2/src/libgcrypt.h +4 -1
  1642. package/vendor/libssh2/src/libssh2_config.h.in +6 -18
  1643. package/vendor/libssh2/src/libssh2_priv.h +17 -6
  1644. package/vendor/libssh2/src/mac.h +0 -1
  1645. package/vendor/libssh2/src/mbedtls.c +520 -2
  1646. package/vendor/libssh2/src/mbedtls.h +146 -7
  1647. package/vendor/libssh2/src/misc.c +14 -16
  1648. package/vendor/libssh2/src/openssl.c +227 -181
  1649. package/vendor/libssh2/src/openssl.h +9 -22
  1650. package/vendor/libssh2/src/packet.c +98 -38
  1651. package/vendor/libssh2/src/packet.h +3 -3
  1652. package/vendor/libssh2/src/pem.c +20 -11
  1653. package/vendor/libssh2/src/scp.c +3 -3
  1654. package/vendor/libssh2/src/session.c +2 -2
  1655. package/vendor/libssh2/src/session.h +3 -3
  1656. package/vendor/libssh2/src/sftp.c +1 -1
  1657. package/vendor/libssh2/src/sftp.h +3 -3
  1658. package/vendor/libssh2/src/transport.c +11 -4
  1659. package/vendor/libssh2/src/transport.h +0 -1
  1660. package/vendor/libssh2/src/userauth.c +24 -22
  1661. package/vendor/libssh2/src/userauth.h +3 -3
  1662. package/vendor/libssh2/src/wincng.c +485 -60
  1663. package/vendor/libssh2/src/wincng.h +33 -5
  1664. package/vendor/libssh2/test-driver +6 -4
  1665. package/vendor/libssh2/tests/CMakeLists.txt +4 -1
  1666. package/vendor/libssh2/tests/Makefile.am +60 -23
  1667. package/vendor/libssh2/tests/Makefile.in +223 -65
  1668. package/vendor/libssh2/tests/key_ecdsa +10 -0
  1669. package/vendor/libssh2/tests/key_ecdsa.pub +1 -0
  1670. package/vendor/libssh2/tests/key_ed25519 +7 -0
  1671. package/vendor/libssh2/tests/key_ed25519.pub +1 -0
  1672. package/vendor/libssh2/tests/key_ed25519_encrypted +8 -0
  1673. package/vendor/libssh2/tests/key_ed25519_encrypted.pub +1 -0
  1674. package/vendor/libssh2/tests/key_rsa_encrypted +30 -0
  1675. package/vendor/libssh2/tests/key_rsa_encrypted.pub +1 -0
  1676. package/vendor/libssh2/tests/key_rsa_openssh +27 -0
  1677. package/vendor/libssh2/tests/key_rsa_openssh.pub +1 -0
  1678. package/vendor/libssh2/tests/openssh_fixture.c +141 -46
  1679. package/vendor/libssh2/tests/openssh_server/Dockerfile +9 -0
  1680. package/vendor/libssh2/tests/openssh_server/authorized_keys +1 -0
  1681. package/vendor/libssh2/tests/openssh_server/ca_ecdsa +12 -0
  1682. package/vendor/libssh2/tests/openssh_server/ca_ecdsa.pub +1 -0
  1683. package/vendor/libssh2/tests/openssh_server/ssh_host_ecdsa_key +5 -0
  1684. package/vendor/libssh2/tests/openssh_server/ssh_host_ed25519_key +7 -0
  1685. package/vendor/libssh2/tests/ossfuzz/Makefile.am +32 -0
  1686. package/vendor/libssh2/tests/ossfuzz/Makefile.in +731 -0
  1687. package/vendor/libssh2/tests/ossfuzz/ssh2_client_fuzzer.cc +90 -0
  1688. package/vendor/libssh2/tests/ossfuzz/standaloneengine.cc +74 -0
  1689. package/vendor/libssh2/tests/ossfuzz/testinput.h +3 -0
  1690. package/vendor/libssh2/tests/ssh2.c +9 -5
  1691. package/vendor/libssh2/tests/test_agent_forward_succeeds.c +51 -0
  1692. package/vendor/libssh2/tests/test_hostkey.c +5 -3
  1693. package/vendor/libssh2/tests/test_hostkey_hash.c +32 -19
  1694. package/vendor/libssh2/tests/test_keyboard_interactive_auth_fails_with_wrong_response.c +3 -3
  1695. package/vendor/libssh2/tests/test_keyboard_interactive_auth_succeeds_with_correct_response.c +5 -4
  1696. package/vendor/libssh2/tests/test_password_auth_fails_with_wrong_password.c +1 -1
  1697. package/vendor/libssh2/tests/test_password_auth_fails_with_wrong_username.c +2 -1
  1698. package/vendor/libssh2/tests/test_password_auth_succeeds_with_correct_credentials.c +3 -2
  1699. package/vendor/libssh2/tests/test_public_key_auth_fails_with_wrong_key.c +1 -1
  1700. package/vendor/libssh2/tests/test_public_key_auth_succeeds_with_correct_dsa_key.c +3 -2
  1701. package/vendor/libssh2/tests/test_public_key_auth_succeeds_with_correct_ecdsa_key.c +38 -0
  1702. package/vendor/libssh2/tests/test_public_key_auth_succeeds_with_correct_ed25519_key.c +38 -0
  1703. package/vendor/libssh2/tests/test_public_key_auth_succeeds_with_correct_ed25519_key_from_mem.c +98 -0
  1704. package/vendor/libssh2/tests/test_public_key_auth_succeeds_with_correct_encrypted_ed25519_key.c +39 -0
  1705. package/vendor/libssh2/tests/test_public_key_auth_succeeds_with_correct_encrypted_rsa_key.c +3 -2
  1706. package/vendor/libssh2/tests/test_public_key_auth_succeeds_with_correct_rsa_key.c +3 -2
  1707. package/vendor/libssh2/tests/test_public_key_auth_succeeds_with_correct_rsa_openssh_key.c +3 -2
  1708. package/vendor/libssh2/tests/test_public_key_auth_succeeds_with_correct_signed_ecdsa_key.c +38 -0
  1709. package/vendor/libssh2/vms/libssh2_make_help.dcl +12 -12
  1710. package/vendor/libssh2/win32/libssh2.dsp +8 -0
  1711. package/CHANGELOG.md +0 -3415
  1712. package/HISTORY.md +0 -9
  1713. package/dist/blame.js +0 -22
  1714. package/dist/checkout.js +0 -53
  1715. package/dist/cherrypick.js +0 -62
  1716. package/dist/clone.js +0 -35
  1717. package/dist/status_list.js +0 -14
  1718. package/dist/utils/normalize_fetch_options.js +0 -43
  1719. package/dist/utils/normalize_options.js +0 -31
  1720. package/gibberish/.git/hooks/README.sample +0 -5
  1721. package/include/async_libgit2_queue_worker.h +0 -33
  1722. package/vendor/libgit2/azure-pipelines/bash.yml +0 -17
  1723. package/vendor/libgit2/azure-pipelines/coverity.yml +0 -26
  1724. package/vendor/libgit2/azure-pipelines/docker.yml +0 -51
  1725. package/vendor/libgit2/azure-pipelines/nightly.yml +0 -232
  1726. package/vendor/libgit2/azure-pipelines.yml +0 -203
  1727. package/vendor/libgit2/docs/changelog.md +0 -1627
  1728. package/vendor/libgit2/src/allocators/win32_crtdbg.c +0 -118
  1729. package/vendor/libgit2/src/global.c +0 -357
  1730. package/vendor/libgit2/src/global.h +0 -41
  1731. package/vendor/libgit2/src/thread-utils.c +0 -263
  1732. package/vendor/libgit2/src/thread-utils.h +0 -294
  1733. package/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.c +0 -345
  1734. package/vendor/libgit2/src/win32/w32_crtdbg_stacktrace.h +0 -127
  1735. package/vendor/libgit2/src/win32/w32_stack.c +0 -188
  1736. package/vendor/libgit2/src/win32/w32_stack.h +0 -140
  1737. package/vendor/libssh2/buildconf +0 -22
  1738. package/vendor/libssh2/docs/INSTALL_CMAKE +0 -179
package/src/diff.cc CHANGED
@@ -13,7 +13,6 @@ extern "C" {
13
13
  #include "../include/functions/copy.h"
14
14
  #include "../include/diff.h"
15
15
  #include "nodegit_wrapper.cc"
16
- #include "../include/async_libgit2_queue_worker.h"
17
16
 
18
17
  #include "../include/blob.h"
19
18
  #include "../include/diff_options.h"
@@ -43,37 +42,38 @@ using namespace node;
43
42
  // way of knowing to free these values.
44
43
  }
45
44
 
46
- void GitDiff::InitializeComponent(v8::Local<v8::Object> target) {
45
+ void GitDiff::InitializeComponent(v8::Local<v8::Object> target, nodegit::Context *nodegitContext) {
47
46
  Nan::HandleScope scope;
48
47
 
49
- v8::Local<FunctionTemplate> tpl = Nan::New<FunctionTemplate>(JSNewFunction);
48
+ v8::Local<v8::External> nodegitExternal = Nan::New<v8::External>(nodegitContext);
49
+ v8::Local<FunctionTemplate> tpl = Nan::New<FunctionTemplate>(JSNewFunction, nodegitExternal);
50
50
 
51
51
  tpl->InstanceTemplate()->SetInternalFieldCount(1);
52
52
  tpl->SetClassName(Nan::New("Diff").ToLocalChecked());
53
53
 
54
- Nan::SetMethod(tpl, "blobToBuffer", BlobToBuffer);
55
- Nan::SetPrototypeMethod(tpl, "findSimilar", FindSimilar);
56
- Nan::SetMethod(tpl, "fromBuffer", FromBuffer);
57
- Nan::SetPrototypeMethod(tpl, "getDelta", GetDelta);
58
- Nan::SetPrototypeMethod(tpl, "getStats", GetStats);
59
- Nan::SetMethod(tpl, "indexToIndex", IndexToIndex);
60
- Nan::SetMethod(tpl, "indexToWorkdir", IndexToWorkdir);
61
- Nan::SetPrototypeMethod(tpl, "isSortedIcase", IsSortedIcase);
62
- Nan::SetPrototypeMethod(tpl, "merge", Merge);
63
- Nan::SetPrototypeMethod(tpl, "numDeltas", NumDeltas);
64
- Nan::SetPrototypeMethod(tpl, "patchid", Patchid);
65
- Nan::SetPrototypeMethod(tpl, "toBuf", ToBuf);
66
- Nan::SetMethod(tpl, "treeToIndex", TreeToIndex);
67
- Nan::SetMethod(tpl, "treeToTree", TreeToTree);
68
- Nan::SetMethod(tpl, "treeToWorkdir", TreeToWorkdir);
69
- Nan::SetMethod(tpl, "treeToWorkdirWithIndex", TreeToWorkdirWithIndex);
70
- Nan::SetPrototypeMethod(tpl, "getPerfdata", GetPerfdata);
54
+ Nan::SetMethod(tpl, "blobToBuffer", BlobToBuffer, nodegitExternal);
55
+ Nan::SetPrototypeMethod(tpl, "findSimilar", FindSimilar, nodegitExternal);
56
+ Nan::SetMethod(tpl, "fromBuffer", FromBuffer, nodegitExternal);
57
+ Nan::SetPrototypeMethod(tpl, "getDelta", GetDelta, nodegitExternal);
58
+ Nan::SetPrototypeMethod(tpl, "getStats", GetStats, nodegitExternal);
59
+ Nan::SetMethod(tpl, "indexToIndex", IndexToIndex, nodegitExternal);
60
+ Nan::SetMethod(tpl, "indexToWorkdir", IndexToWorkdir, nodegitExternal);
61
+ Nan::SetPrototypeMethod(tpl, "isSortedIcase", IsSortedIcase, nodegitExternal);
62
+ Nan::SetPrototypeMethod(tpl, "merge", Merge, nodegitExternal);
63
+ Nan::SetPrototypeMethod(tpl, "numDeltas", NumDeltas, nodegitExternal);
64
+ Nan::SetPrototypeMethod(tpl, "patchid", Patchid, nodegitExternal);
65
+ Nan::SetPrototypeMethod(tpl, "toBuf", ToBuf, nodegitExternal);
66
+ Nan::SetMethod(tpl, "treeToIndex", TreeToIndex, nodegitExternal);
67
+ Nan::SetMethod(tpl, "treeToTree", TreeToTree, nodegitExternal);
68
+ Nan::SetMethod(tpl, "treeToWorkdir", TreeToWorkdir, nodegitExternal);
69
+ Nan::SetMethod(tpl, "treeToWorkdirWithIndex", TreeToWorkdirWithIndex, nodegitExternal);
70
+ Nan::SetPrototypeMethod(tpl, "getPerfdata", GetPerfdata, nodegitExternal);
71
71
 
72
72
  InitializeTemplate(tpl);
73
73
 
74
- v8::Local<Function> _constructor_template = Nan::GetFunction(tpl).ToLocalChecked();
75
- constructor_template.Reset(_constructor_template);
76
- Nan::Set(target, Nan::New("Diff").ToLocalChecked(), _constructor_template);
74
+ v8::Local<Function> constructor_template = Nan::GetFunction(tpl).ToLocalChecked();
75
+ nodegitContext->SaveToPersistent("GitDiff::Template", constructor_template);
76
+ Nan::Set(target, Nan::New("Diff").ToLocalChecked(), constructor_template);
77
77
  }
78
78
 
79
79
 
@@ -92,19 +92,23 @@ using namespace node;
92
92
  */
93
93
  NAN_METHOD(GitDiff::BlobToBuffer) {
94
94
 
95
- if (info.Length() == 11 || !info[11]->IsFunction()) {
95
+ if (!info[info.Length() - 1]->IsFunction()) {
96
96
  return Nan::ThrowError("Callback is required and must be a Function.");
97
97
  }
98
98
 
99
- BlobToBufferBaton* baton = new BlobToBufferBaton;
99
+ BlobToBufferBaton* baton = new BlobToBufferBaton();
100
100
 
101
101
  baton->error_code = GIT_OK;
102
102
  baton->error = NULL;
103
103
 
104
104
  BlobToBuffer_globalPayload* globalPayload = new BlobToBuffer_globalPayload;
105
+
106
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
107
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
108
+
105
109
  // start convert_from_v8 block
106
110
  const git_blob * from_old_blob = NULL;
107
- if (info[0]->IsObject()) {
111
+ if ((info.Length() - 1) > 0 && info[0]->IsObject()) {
108
112
  from_old_blob = Nan::ObjectWrap::Unwrap<GitBlob>(Nan::To<v8::Object>(info[0]).ToLocalChecked())->GetValue();
109
113
  }
110
114
  else {
@@ -114,7 +118,7 @@ from_old_blob = Nan::ObjectWrap::Unwrap<GitBlob>(Nan::To<v8::Object>(info[0]).To
114
118
  baton->old_blob = from_old_blob;
115
119
  // start convert_from_v8 block
116
120
  const char * from_old_as_path = NULL;
117
- if (info[1]->IsString()) {
121
+ if ((info.Length() - 1) > 1 && info[1]->IsString()) {
118
122
 
119
123
  Nan::Utf8String old_as_path(Nan::To<v8::String>(info[1]).ToLocalChecked());
120
124
  // malloc with one extra byte so we can add the terminating null character C-strings expect:
@@ -133,7 +137,7 @@ from_old_blob = Nan::ObjectWrap::Unwrap<GitBlob>(Nan::To<v8::Object>(info[0]).To
133
137
  baton->old_as_path = from_old_as_path;
134
138
  // start convert_from_v8 block
135
139
  const char * from_buffer = NULL;
136
- if (info[2]->IsString()) {
140
+ if ((info.Length() - 1) > 2 && info[2]->IsString()) {
137
141
 
138
142
  Nan::Utf8String buffer(Nan::To<v8::String>(info[2]).ToLocalChecked());
139
143
  // malloc with one extra byte so we can add the terminating null character C-strings expect:
@@ -152,7 +156,7 @@ from_old_blob = Nan::ObjectWrap::Unwrap<GitBlob>(Nan::To<v8::Object>(info[0]).To
152
156
  baton->buffer = from_buffer;
153
157
  // start convert_from_v8 block
154
158
  size_t from_buffer_len;
155
- if (info[3]->IsNumber()) {
159
+ if ((info.Length() - 1) > 3 && info[3]->IsNumber()) {
156
160
  from_buffer_len = (size_t) info[3].As<v8::Number>()->Value();
157
161
  }
158
162
  else {
@@ -162,7 +166,7 @@ from_old_blob = Nan::ObjectWrap::Unwrap<GitBlob>(Nan::To<v8::Object>(info[0]).To
162
166
  baton->buffer_len = from_buffer_len;
163
167
  // start convert_from_v8 block
164
168
  const char * from_buffer_as_path = NULL;
165
- if (info[4]->IsString()) {
169
+ if ((info.Length() - 1) > 4 && info[4]->IsString()) {
166
170
 
167
171
  Nan::Utf8String buffer_as_path(Nan::To<v8::String>(info[4]).ToLocalChecked());
168
172
  // malloc with one extra byte so we can add the terminating null character C-strings expect:
@@ -179,17 +183,20 @@ from_old_blob = Nan::ObjectWrap::Unwrap<GitBlob>(Nan::To<v8::Object>(info[0]).To
179
183
  }
180
184
  // end convert_from_v8 block
181
185
  baton->buffer_as_path = from_buffer_as_path;
182
- // start convert_from_v8 block
183
- const git_diff_options * from_options = NULL;
184
- if (info[5]->IsObject()) {
185
- from_options = Nan::ObjectWrap::Unwrap<GitDiffOptions>(Nan::To<v8::Object>(info[5]).ToLocalChecked())->GetValue();
186
- }
187
- else {
188
- from_options = 0;
189
- }
190
- // end convert_from_v8 block
191
- baton->options = from_options;
192
- if (!info[6]->IsFunction()) {
186
+ if (info[5]->IsNull() || info[5]->IsUndefined()) {
187
+ baton->options = nullptr;
188
+ } else
189
+ {
190
+ auto conversionResult = ConfigurableGitDiffOptions::fromJavascript(nodegitContext, info[5]);
191
+ if (!conversionResult.result) {
192
+ return Nan::ThrowError(Nan::New(conversionResult.error).ToLocalChecked());
193
+ }
194
+
195
+ auto convertedObject = conversionResult.result;
196
+ cleanupHandles["options"] = convertedObject;
197
+ baton->options = convertedObject->GetValue();
198
+ }
199
+ if (!info[6]->IsFunction()) {
193
200
  baton->file_cb = NULL;
194
201
  globalPayload->file_cb = NULL;
195
202
  }
@@ -223,42 +230,38 @@ from_options = Nan::ObjectWrap::Unwrap<GitDiffOptions>(Nan::To<v8::Object>(info[
223
230
  }
224
231
  baton->payload = globalPayload;
225
232
 
226
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[11]));
227
- BlobToBufferWorker *worker = new BlobToBufferWorker(baton, callback);
228
-
229
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
230
- worker->SaveToPersistent("old_blob", Nan::To<v8::Object>(info[0]).ToLocalChecked());
231
- if (!info[1]->IsUndefined() && !info[1]->IsNull())
232
- worker->SaveToPersistent("old_as_path", Nan::To<v8::Object>(info[1]).ToLocalChecked());
233
- if (!info[2]->IsUndefined() && !info[2]->IsNull())
234
- worker->SaveToPersistent("buffer", Nan::To<v8::Object>(info[2]).ToLocalChecked());
235
- if (!info[3]->IsUndefined() && !info[3]->IsNull())
236
- worker->SaveToPersistent("buffer_len", Nan::To<v8::Object>(info[3]).ToLocalChecked());
237
- if (!info[4]->IsUndefined() && !info[4]->IsNull())
238
- worker->SaveToPersistent("buffer_as_path", Nan::To<v8::Object>(info[4]).ToLocalChecked());
239
- if (!info[5]->IsUndefined() && !info[5]->IsNull())
240
- worker->SaveToPersistent("options", Nan::To<v8::Object>(info[5]).ToLocalChecked());
241
- if (!info[10]->IsUndefined() && !info[10]->IsNull())
242
- worker->SaveToPersistent("payload", Nan::To<v8::Object>(info[10]).ToLocalChecked());
243
-
244
- AsyncLibgit2QueueWorker(worker);
233
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
234
+ BlobToBufferWorker *worker = new BlobToBufferWorker(baton, callback, cleanupHandles);
235
+
236
+ worker->Reference<GitBlob>("old_blob", info[0]);
237
+ worker->Reference("old_as_path", info[1]);
238
+ worker->Reference("buffer", info[2]);
239
+ worker->Reference("buffer_len", info[3]);
240
+ worker->Reference("buffer_as_path", info[4]);
241
+ worker->Reference("options", info[5]);
242
+ worker->Reference("payload", info[10]);
243
+
244
+ nodegitContext->QueueWorker(worker);
245
245
  return;
246
246
  }
247
247
 
248
+ nodegit::LockMaster GitDiff::BlobToBufferWorker::AcquireLocks() {
249
+ nodegit::LockMaster lockMaster(
250
+ /*asyncAction: */true
251
+ ,baton->old_blob
252
+ ,baton->old_as_path
253
+ ,baton->buffer
254
+ ,baton->buffer_as_path
255
+ ,baton->options
256
+ ,baton->payload
257
+ );
258
+
259
+ return lockMaster;
260
+ }
261
+
248
262
  void GitDiff::BlobToBufferWorker::Execute() {
249
263
  git_error_clear();
250
264
 
251
- {
252
- LockMaster lockMaster(
253
- /*asyncAction: */true
254
- ,baton->old_blob
255
- ,baton->old_as_path
256
- ,baton->buffer
257
- ,baton->buffer_as_path
258
- ,baton->options
259
- ,baton->payload
260
- );
261
-
262
265
  int result = git_diff_blob_to_buffer(
263
266
  baton->old_blob,baton->old_as_path,baton->buffer,baton->buffer_len,baton->buffer_as_path,baton->options,baton->file_cb,baton->binary_cb,baton->hunk_cb,baton->line_cb,baton->payload );
264
267
 
@@ -268,13 +271,35 @@ baton->old_blob,baton->old_as_path,baton->buffer,baton->buffer_len,baton->buffer
268
271
  baton->error = git_error_dup(git_error_last());
269
272
  }
270
273
 
274
+ }
275
+
276
+ void GitDiff::BlobToBufferWorker::HandleErrorCallback() {
277
+ if (!GetIsCancelled()) {
278
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
279
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.blobToBuffer").ToLocalChecked());
280
+ v8::Local<v8::Value> argv[1] = {
281
+ err
282
+ };
283
+ callback->Call(1, argv, async_resource);
271
284
  }
285
+
286
+ if (baton->error) {
287
+ if (baton->error->message) {
288
+ free((void *)baton->error->message);
289
+ }
290
+
291
+ free((void *)baton->error);
292
+ }
293
+
294
+ delete (BlobToBuffer_globalPayload*)baton->payload;
295
+
296
+ delete baton;
272
297
  }
273
298
 
274
299
  void GitDiff::BlobToBufferWorker::HandleOKCallback() {
275
300
  if (baton->error_code == GIT_OK) {
276
301
  v8::Local<v8::Value> result = Nan::Undefined();
277
-
302
+
278
303
  v8::Local<v8::Value> argv[2] = {
279
304
  Nan::Null(),
280
305
  result
@@ -298,51 +323,15 @@ void GitDiff::BlobToBufferWorker::HandleOKCallback() {
298
323
  free((void *)baton->error->message);
299
324
  free((void *)baton->error);
300
325
  } else if (baton->error_code < 0) {
301
- std::queue< v8::Local<v8::Value> > workerArguments;
302
- workerArguments.push(GetFromPersistent("old_blob"));
303
- workerArguments.push(GetFromPersistent("old_as_path"));
304
- workerArguments.push(GetFromPersistent("buffer"));
305
- workerArguments.push(GetFromPersistent("buffer_len"));
306
- workerArguments.push(GetFromPersistent("buffer_as_path"));
307
- workerArguments.push(GetFromPersistent("options"));
308
- workerArguments.push(GetFromPersistent("payload"));
309
326
  bool callbackFired = false;
310
- while(!workerArguments.empty()) {
311
- v8::Local<v8::Value> node = workerArguments.front();
312
- workerArguments.pop();
313
-
314
- if (
315
- !node->IsObject()
316
- || node->IsArray()
317
- || node->IsBooleanObject()
318
- || node->IsDate()
319
- || node->IsFunction()
320
- || node->IsNumberObject()
321
- || node->IsRegExp()
322
- || node->IsStringObject()
323
- ) {
324
- continue;
325
- }
326
-
327
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
328
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
329
-
330
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
327
+ if (!callbackErrorHandle.IsEmpty()) {
328
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
329
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
331
330
  v8::Local<v8::Value> argv[1] = {
332
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
331
+ maybeError
333
332
  };
334
333
  callback->Call(1, argv, async_resource);
335
334
  callbackFired = true;
336
- break;
337
- }
338
-
339
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
340
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
341
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
342
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
343
- if (!nodeToQueue->IsUndefined()) {
344
- workerArguments.push(nodeToQueue);
345
- }
346
335
  }
347
336
  }
348
337
 
@@ -375,7 +364,13 @@ int GitDiff::BlobToBuffer_file_cb_cppCallback (
375
364
  baton.progress = progress;
376
365
  baton.payload = payload;
377
366
 
378
- return baton.ExecuteAsync(BlobToBuffer_file_cb_async);
367
+ return baton.ExecuteAsync(BlobToBuffer_file_cb_async, BlobToBuffer_file_cb_cancelAsync);
368
+ }
369
+
370
+ void GitDiff::BlobToBuffer_file_cb_cancelAsync(void *untypedBaton) {
371
+ BlobToBuffer_FileCbBaton* baton = static_cast<BlobToBuffer_FileCbBaton*>(untypedBaton);
372
+ baton->result = -1;
373
+ baton->Done();
379
374
  }
380
375
 
381
376
  void GitDiff::BlobToBuffer_file_cb_async(void *untypedBaton) {
@@ -391,8 +386,8 @@ void GitDiff::BlobToBuffer_file_cb_async(void *untypedBaton) {
391
386
  };
392
387
 
393
388
  Nan::TryCatch tryCatch;
394
- // TODO This should take an async_resource, but we will need to figure out how to pipe the correct context into this
395
- Nan::MaybeLocal<v8::Value> maybeResult = Nan::Call(*callback, 2, argv);
389
+ Nan::MaybeLocal<v8::Value> maybeResult = (*callback)(baton->GetAsyncResource(), 2, argv);
390
+
396
391
  v8::Local<v8::Value> result;
397
392
  if (!maybeResult.IsEmpty()) {
398
393
  result = maybeResult.ToLocalChecked();
@@ -420,7 +415,7 @@ void GitDiff::BlobToBuffer_file_cb_async(void *untypedBaton) {
420
415
  baton->Done();
421
416
  }
422
417
 
423
- void GitDiff::BlobToBuffer_file_cb_promiseCompleted(bool isFulfilled, AsyncBaton *_baton, v8::Local<v8::Value> result) {
418
+ void GitDiff::BlobToBuffer_file_cb_promiseCompleted(bool isFulfilled, nodegit::AsyncBaton *_baton, v8::Local<v8::Value> result) {
424
419
  Nan::HandleScope scope;
425
420
 
426
421
  BlobToBuffer_FileCbBaton* baton = static_cast<BlobToBuffer_FileCbBaton*>(_baton);
@@ -460,7 +455,13 @@ int GitDiff::BlobToBuffer_binary_cb_cppCallback (
460
455
  baton.binary = binary;
461
456
  baton.payload = payload;
462
457
 
463
- return baton.ExecuteAsync(BlobToBuffer_binary_cb_async);
458
+ return baton.ExecuteAsync(BlobToBuffer_binary_cb_async, BlobToBuffer_binary_cb_cancelAsync);
459
+ }
460
+
461
+ void GitDiff::BlobToBuffer_binary_cb_cancelAsync(void *untypedBaton) {
462
+ BlobToBuffer_BinaryCbBaton* baton = static_cast<BlobToBuffer_BinaryCbBaton*>(untypedBaton);
463
+ baton->result = -1;
464
+ baton->Done();
464
465
  }
465
466
 
466
467
  void GitDiff::BlobToBuffer_binary_cb_async(void *untypedBaton) {
@@ -476,8 +477,8 @@ void GitDiff::BlobToBuffer_binary_cb_async(void *untypedBaton) {
476
477
  };
477
478
 
478
479
  Nan::TryCatch tryCatch;
479
- // TODO This should take an async_resource, but we will need to figure out how to pipe the correct context into this
480
- Nan::MaybeLocal<v8::Value> maybeResult = Nan::Call(*callback, 2, argv);
480
+ Nan::MaybeLocal<v8::Value> maybeResult = (*callback)(baton->GetAsyncResource(), 2, argv);
481
+
481
482
  v8::Local<v8::Value> result;
482
483
  if (!maybeResult.IsEmpty()) {
483
484
  result = maybeResult.ToLocalChecked();
@@ -505,7 +506,7 @@ void GitDiff::BlobToBuffer_binary_cb_async(void *untypedBaton) {
505
506
  baton->Done();
506
507
  }
507
508
 
508
- void GitDiff::BlobToBuffer_binary_cb_promiseCompleted(bool isFulfilled, AsyncBaton *_baton, v8::Local<v8::Value> result) {
509
+ void GitDiff::BlobToBuffer_binary_cb_promiseCompleted(bool isFulfilled, nodegit::AsyncBaton *_baton, v8::Local<v8::Value> result) {
509
510
  Nan::HandleScope scope;
510
511
 
511
512
  BlobToBuffer_BinaryCbBaton* baton = static_cast<BlobToBuffer_BinaryCbBaton*>(_baton);
@@ -545,7 +546,13 @@ int GitDiff::BlobToBuffer_hunk_cb_cppCallback (
545
546
  baton.hunk = hunk;
546
547
  baton.payload = payload;
547
548
 
548
- return baton.ExecuteAsync(BlobToBuffer_hunk_cb_async);
549
+ return baton.ExecuteAsync(BlobToBuffer_hunk_cb_async, BlobToBuffer_hunk_cb_cancelAsync);
550
+ }
551
+
552
+ void GitDiff::BlobToBuffer_hunk_cb_cancelAsync(void *untypedBaton) {
553
+ BlobToBuffer_HunkCbBaton* baton = static_cast<BlobToBuffer_HunkCbBaton*>(untypedBaton);
554
+ baton->result = -1;
555
+ baton->Done();
549
556
  }
550
557
 
551
558
  void GitDiff::BlobToBuffer_hunk_cb_async(void *untypedBaton) {
@@ -561,8 +568,8 @@ void GitDiff::BlobToBuffer_hunk_cb_async(void *untypedBaton) {
561
568
  };
562
569
 
563
570
  Nan::TryCatch tryCatch;
564
- // TODO This should take an async_resource, but we will need to figure out how to pipe the correct context into this
565
- Nan::MaybeLocal<v8::Value> maybeResult = Nan::Call(*callback, 2, argv);
571
+ Nan::MaybeLocal<v8::Value> maybeResult = (*callback)(baton->GetAsyncResource(), 2, argv);
572
+
566
573
  v8::Local<v8::Value> result;
567
574
  if (!maybeResult.IsEmpty()) {
568
575
  result = maybeResult.ToLocalChecked();
@@ -590,7 +597,7 @@ void GitDiff::BlobToBuffer_hunk_cb_async(void *untypedBaton) {
590
597
  baton->Done();
591
598
  }
592
599
 
593
- void GitDiff::BlobToBuffer_hunk_cb_promiseCompleted(bool isFulfilled, AsyncBaton *_baton, v8::Local<v8::Value> result) {
600
+ void GitDiff::BlobToBuffer_hunk_cb_promiseCompleted(bool isFulfilled, nodegit::AsyncBaton *_baton, v8::Local<v8::Value> result) {
594
601
  Nan::HandleScope scope;
595
602
 
596
603
  BlobToBuffer_HunkCbBaton* baton = static_cast<BlobToBuffer_HunkCbBaton*>(_baton);
@@ -631,7 +638,13 @@ int GitDiff::BlobToBuffer_line_cb_cppCallback (
631
638
  baton.line = line;
632
639
  baton.payload = payload;
633
640
 
634
- return baton.ExecuteAsync(BlobToBuffer_line_cb_async);
641
+ return baton.ExecuteAsync(BlobToBuffer_line_cb_async, BlobToBuffer_line_cb_cancelAsync);
642
+ }
643
+
644
+ void GitDiff::BlobToBuffer_line_cb_cancelAsync(void *untypedBaton) {
645
+ BlobToBuffer_LineCbBaton* baton = static_cast<BlobToBuffer_LineCbBaton*>(untypedBaton);
646
+ baton->result = -1;
647
+ baton->Done();
635
648
  }
636
649
 
637
650
  void GitDiff::BlobToBuffer_line_cb_async(void *untypedBaton) {
@@ -648,8 +661,8 @@ void GitDiff::BlobToBuffer_line_cb_async(void *untypedBaton) {
648
661
  };
649
662
 
650
663
  Nan::TryCatch tryCatch;
651
- // TODO This should take an async_resource, but we will need to figure out how to pipe the correct context into this
652
- Nan::MaybeLocal<v8::Value> maybeResult = Nan::Call(*callback, 3, argv);
664
+ Nan::MaybeLocal<v8::Value> maybeResult = (*callback)(baton->GetAsyncResource(), 3, argv);
665
+
653
666
  v8::Local<v8::Value> result;
654
667
  if (!maybeResult.IsEmpty()) {
655
668
  result = maybeResult.ToLocalChecked();
@@ -677,7 +690,7 @@ void GitDiff::BlobToBuffer_line_cb_async(void *untypedBaton) {
677
690
  baton->Done();
678
691
  }
679
692
 
680
- void GitDiff::BlobToBuffer_line_cb_promiseCompleted(bool isFulfilled, AsyncBaton *_baton, v8::Local<v8::Value> result) {
693
+ void GitDiff::BlobToBuffer_line_cb_promiseCompleted(bool isFulfilled, nodegit::AsyncBaton *_baton, v8::Local<v8::Value> result) {
681
694
  Nan::HandleScope scope;
682
695
 
683
696
  BlobToBuffer_LineCbBaton* baton = static_cast<BlobToBuffer_LineCbBaton*>(_baton);
@@ -714,48 +727,57 @@ void GitDiff::BlobToBuffer_line_cb_promiseCompleted(bool isFulfilled, AsyncBaton
714
727
  */
715
728
  NAN_METHOD(GitDiff::FindSimilar) {
716
729
 
717
- if (info.Length() == 1 || !info[1]->IsFunction()) {
730
+ if (!info[info.Length() - 1]->IsFunction()) {
718
731
  return Nan::ThrowError("Callback is required and must be a Function.");
719
732
  }
720
733
 
721
- FindSimilarBaton* baton = new FindSimilarBaton;
734
+ FindSimilarBaton* baton = new FindSimilarBaton();
722
735
 
723
736
  baton->error_code = GIT_OK;
724
737
  baton->error = NULL;
725
738
 
726
- baton->diff = Nan::ObjectWrap::Unwrap<GitDiff>(info.This())->GetValue();
727
- // start convert_from_v8 block
728
- const git_diff_find_options * from_options = NULL;
729
- if (info[0]->IsObject()) {
730
- from_options = Nan::ObjectWrap::Unwrap<GitDiffFindOptions>(Nan::To<v8::Object>(info[0]).ToLocalChecked())->GetValue();
731
- }
732
- else {
733
- from_options = 0;
734
- }
735
- // end convert_from_v8 block
736
- baton->options = from_options;
737
739
 
738
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[1]));
739
- FindSimilarWorker *worker = new FindSimilarWorker(baton, callback);
740
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
741
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
740
742
 
741
- worker->SaveToPersistent("diff", info.This());
742
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
743
- worker->SaveToPersistent("options", Nan::To<v8::Object>(info[0]).ToLocalChecked());
743
+ baton->diff = Nan::ObjectWrap::Unwrap<GitDiff>(info.This())->GetValue();
744
+ if (info[0]->IsNull() || info[0]->IsUndefined()) {
745
+ baton->options = nullptr;
746
+ } else
747
+ {
748
+ auto conversionResult = ConfigurableGitDiffFindOptions::fromJavascript(nodegitContext, info[0]);
749
+ if (!conversionResult.result) {
750
+ return Nan::ThrowError(Nan::New(conversionResult.error).ToLocalChecked());
751
+ }
752
+
753
+ auto convertedObject = conversionResult.result;
754
+ cleanupHandles["options"] = convertedObject;
755
+ baton->options = convertedObject->GetValue();
756
+ }
757
+
758
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
759
+ FindSimilarWorker *worker = new FindSimilarWorker(baton, callback, cleanupHandles);
744
760
 
745
- AsyncLibgit2QueueWorker(worker);
761
+ worker->Reference<GitDiff>("diff", info.This());
762
+ worker->Reference("options", info[0]);
763
+
764
+ nodegitContext->QueueWorker(worker);
746
765
  return;
747
766
  }
748
767
 
768
+ nodegit::LockMaster GitDiff::FindSimilarWorker::AcquireLocks() {
769
+ nodegit::LockMaster lockMaster(
770
+ /*asyncAction: */true
771
+ ,baton->diff
772
+ ,baton->options
773
+ );
774
+
775
+ return lockMaster;
776
+ }
777
+
749
778
  void GitDiff::FindSimilarWorker::Execute() {
750
779
  git_error_clear();
751
780
 
752
- {
753
- LockMaster lockMaster(
754
- /*asyncAction: */true
755
- ,baton->diff
756
- ,baton->options
757
- );
758
-
759
781
  int result = git_diff_find_similar(
760
782
  baton->diff,baton->options );
761
783
 
@@ -765,13 +787,34 @@ baton->diff,baton->options );
765
787
  baton->error = git_error_dup(git_error_last());
766
788
  }
767
789
 
790
+ }
791
+
792
+ void GitDiff::FindSimilarWorker::HandleErrorCallback() {
793
+ if (!GetIsCancelled()) {
794
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
795
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.findSimilar").ToLocalChecked());
796
+ v8::Local<v8::Value> argv[1] = {
797
+ err
798
+ };
799
+ callback->Call(1, argv, async_resource);
768
800
  }
801
+
802
+ if (baton->error) {
803
+ if (baton->error->message) {
804
+ free((void *)baton->error->message);
805
+ }
806
+
807
+ free((void *)baton->error);
808
+ }
809
+
810
+
811
+ delete baton;
769
812
  }
770
813
 
771
814
  void GitDiff::FindSimilarWorker::HandleOKCallback() {
772
815
  if (baton->error_code == GIT_OK) {
773
816
  v8::Local<v8::Value> result = Nan::Undefined();
774
-
817
+
775
818
  v8::Local<v8::Value> argv[2] = {
776
819
  Nan::Null(),
777
820
  result
@@ -795,45 +838,15 @@ void GitDiff::FindSimilarWorker::HandleOKCallback() {
795
838
  free((void *)baton->error->message);
796
839
  free((void *)baton->error);
797
840
  } else if (baton->error_code < 0) {
798
- std::queue< v8::Local<v8::Value> > workerArguments;
799
- workerArguments.push(GetFromPersistent("options"));
800
841
  bool callbackFired = false;
801
- while(!workerArguments.empty()) {
802
- v8::Local<v8::Value> node = workerArguments.front();
803
- workerArguments.pop();
804
-
805
- if (
806
- !node->IsObject()
807
- || node->IsArray()
808
- || node->IsBooleanObject()
809
- || node->IsDate()
810
- || node->IsFunction()
811
- || node->IsNumberObject()
812
- || node->IsRegExp()
813
- || node->IsStringObject()
814
- ) {
815
- continue;
816
- }
817
-
818
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
819
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
820
-
821
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
842
+ if (!callbackErrorHandle.IsEmpty()) {
843
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
844
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
822
845
  v8::Local<v8::Value> argv[1] = {
823
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
846
+ maybeError
824
847
  };
825
848
  callback->Call(1, argv, async_resource);
826
849
  callbackFired = true;
827
- break;
828
- }
829
-
830
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
831
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
832
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
833
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
834
- if (!nodeToQueue->IsUndefined()) {
835
- workerArguments.push(nodeToQueue);
836
- }
837
850
  }
838
851
  }
839
852
 
@@ -872,15 +885,19 @@ NAN_METHOD(GitDiff::FromBuffer) {
872
885
  return Nan::ThrowError("Number content_len is required.");
873
886
  }
874
887
 
875
- if (info.Length() == 2 || !info[2]->IsFunction()) {
888
+ if (!info[info.Length() - 1]->IsFunction()) {
876
889
  return Nan::ThrowError("Callback is required and must be a Function.");
877
890
  }
878
891
 
879
- FromBufferBaton* baton = new FromBufferBaton;
892
+ FromBufferBaton* baton = new FromBufferBaton();
880
893
 
881
894
  baton->error_code = GIT_OK;
882
895
  baton->error = NULL;
883
896
 
897
+
898
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
899
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
900
+
884
901
  // start convert_from_v8 block
885
902
  const char * from_content = NULL;
886
903
 
@@ -901,27 +918,28 @@ NAN_METHOD(GitDiff::FromBuffer) {
901
918
  // end convert_from_v8 block
902
919
  baton->content_len = from_content_len;
903
920
 
904
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[2]));
905
- FromBufferWorker *worker = new FromBufferWorker(baton, callback);
906
-
907
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
908
- worker->SaveToPersistent("content", Nan::To<v8::Object>(info[0]).ToLocalChecked());
909
- if (!info[1]->IsUndefined() && !info[1]->IsNull())
910
- worker->SaveToPersistent("content_len", Nan::To<v8::Object>(info[1]).ToLocalChecked());
921
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
922
+ FromBufferWorker *worker = new FromBufferWorker(baton, callback, cleanupHandles);
911
923
 
912
- AsyncLibgit2QueueWorker(worker);
924
+ worker->Reference("content", info[0]);
925
+ worker->Reference("content_len", info[1]);
926
+
927
+ nodegitContext->QueueWorker(worker);
913
928
  return;
914
929
  }
915
930
 
931
+ nodegit::LockMaster GitDiff::FromBufferWorker::AcquireLocks() {
932
+ nodegit::LockMaster lockMaster(
933
+ /*asyncAction: */true
934
+ ,baton->content
935
+ );
936
+
937
+ return lockMaster;
938
+ }
939
+
916
940
  void GitDiff::FromBufferWorker::Execute() {
917
941
  git_error_clear();
918
942
 
919
- {
920
- LockMaster lockMaster(
921
- /*asyncAction: */true
922
- ,baton->content
923
- );
924
-
925
943
  int result = git_diff_from_buffer(
926
944
  &baton->out,baton->content,baton->content_len );
927
945
 
@@ -931,25 +949,47 @@ void GitDiff::FromBufferWorker::Execute() {
931
949
  baton->error = git_error_dup(git_error_last());
932
950
  }
933
951
 
952
+ }
953
+
954
+ void GitDiff::FromBufferWorker::HandleErrorCallback() {
955
+ if (!GetIsCancelled()) {
956
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
957
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.fromBuffer").ToLocalChecked());
958
+ v8::Local<v8::Value> argv[1] = {
959
+ err
960
+ };
961
+ callback->Call(1, argv, async_resource);
962
+ }
963
+
964
+ if (baton->error) {
965
+ if (baton->error->message) {
966
+ free((void *)baton->error->message);
967
+ }
968
+
969
+ free((void *)baton->error);
934
970
  }
971
+
972
+ git_diff_free(baton->out);
973
+
974
+ delete baton;
935
975
  }
936
976
 
937
977
  void GitDiff::FromBufferWorker::HandleOKCallback() {
938
978
  if (baton->error_code == GIT_OK) {
939
- v8::Local<v8::Value> to;
979
+ v8::Local<v8::Value> v8ConversionSlot;
940
980
  // start convert_to_v8 block
941
981
  if (baton->out != NULL) {
942
- to = GitDiff::New(
982
+ v8ConversionSlot = GitDiff::New(
943
983
  baton->out,
944
984
  true
945
985
  );
946
986
  }
947
987
  else {
948
- to = Nan::Null();
988
+ v8ConversionSlot = Nan::Null();
949
989
  }
950
990
  // end convert_to_v8 block
951
- v8::Local<v8::Value> result = to;
952
-
991
+ v8::Local<v8::Value> result = v8ConversionSlot;
992
+
953
993
  v8::Local<v8::Value> argv[2] = {
954
994
  Nan::Null(),
955
995
  result
@@ -973,46 +1013,15 @@ void GitDiff::FromBufferWorker::HandleOKCallback() {
973
1013
  free((void *)baton->error->message);
974
1014
  free((void *)baton->error);
975
1015
  } else if (baton->error_code < 0) {
976
- std::queue< v8::Local<v8::Value> > workerArguments;
977
- workerArguments.push(GetFromPersistent("content"));
978
- workerArguments.push(GetFromPersistent("content_len"));
979
1016
  bool callbackFired = false;
980
- while(!workerArguments.empty()) {
981
- v8::Local<v8::Value> node = workerArguments.front();
982
- workerArguments.pop();
983
-
984
- if (
985
- !node->IsObject()
986
- || node->IsArray()
987
- || node->IsBooleanObject()
988
- || node->IsDate()
989
- || node->IsFunction()
990
- || node->IsNumberObject()
991
- || node->IsRegExp()
992
- || node->IsStringObject()
993
- ) {
994
- continue;
995
- }
996
-
997
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
998
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
999
-
1000
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
1017
+ if (!callbackErrorHandle.IsEmpty()) {
1018
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
1019
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
1001
1020
  v8::Local<v8::Value> argv[1] = {
1002
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
1021
+ maybeError
1003
1022
  };
1004
1023
  callback->Call(1, argv, async_resource);
1005
1024
  callbackFired = true;
1006
- break;
1007
- }
1008
-
1009
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
1010
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
1011
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
1012
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
1013
- if (!nodeToQueue->IsUndefined()) {
1014
- workerArguments.push(nodeToQueue);
1015
- }
1016
1025
  }
1017
1026
  }
1018
1027
 
@@ -1029,6 +1038,7 @@ void GitDiff::FromBufferWorker::HandleOKCallback() {
1029
1038
  callback->Call(0, NULL, async_resource);
1030
1039
  }
1031
1040
 
1041
+ git_diff_free(baton->out);
1032
1042
  }
1033
1043
 
1034
1044
 
@@ -1054,7 +1064,7 @@ NAN_METHOD(GitDiff::GetDelta) {
1054
1064
  git_error_clear();
1055
1065
 
1056
1066
  { // lock master scope start
1057
- LockMaster lockMaster(
1067
+ nodegit::LockMaster lockMaster(
1058
1068
  /*asyncAction: */false
1059
1069
  ,
1060
1070
  Nan::ObjectWrap::Unwrap<GitDiff>(info.This())->GetValue()
@@ -1070,19 +1080,19 @@ NAN_METHOD(GitDiff::GetDelta) {
1070
1080
  return info.GetReturnValue().Set(scope.Escape(Nan::Undefined()));
1071
1081
  }
1072
1082
 
1073
- v8::Local<v8::Value> to;
1083
+ v8::Local<v8::Value> v8ConversionSlot;
1074
1084
  // start convert_to_v8 block
1075
1085
  if (result != NULL) {
1076
- to = GitDiffDelta::New(
1086
+ v8ConversionSlot = GitDiffDelta::New(
1077
1087
  result,
1078
1088
  false
1079
1089
  );
1080
1090
  }
1081
1091
  else {
1082
- to = Nan::Null();
1092
+ v8ConversionSlot = Nan::Null();
1083
1093
  }
1084
1094
  // end convert_to_v8 block
1085
- return info.GetReturnValue().Set(scope.Escape(to));
1095
+ return info.GetReturnValue().Set(scope.Escape(v8ConversionSlot));
1086
1096
  }
1087
1097
  }
1088
1098
 
@@ -1091,35 +1101,42 @@ NAN_METHOD(GitDiff::GetDelta) {
1091
1101
  */
1092
1102
  NAN_METHOD(GitDiff::GetStats) {
1093
1103
 
1094
- if (info.Length() == 0 || !info[0]->IsFunction()) {
1104
+ if (!info[info.Length() - 1]->IsFunction()) {
1095
1105
  return Nan::ThrowError("Callback is required and must be a Function.");
1096
1106
  }
1097
1107
 
1098
- GetStatsBaton* baton = new GetStatsBaton;
1108
+ GetStatsBaton* baton = new GetStatsBaton();
1099
1109
 
1100
1110
  baton->error_code = GIT_OK;
1101
1111
  baton->error = NULL;
1102
1112
 
1113
+
1114
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
1115
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
1116
+
1103
1117
  baton->diff = Nan::ObjectWrap::Unwrap<GitDiff>(info.This())->GetValue();
1104
1118
 
1105
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[0]));
1106
- GetStatsWorker *worker = new GetStatsWorker(baton, callback);
1119
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
1120
+ GetStatsWorker *worker = new GetStatsWorker(baton, callback, cleanupHandles);
1107
1121
 
1108
- worker->SaveToPersistent("diff", info.This());
1122
+ worker->Reference<GitDiff>("diff", info.This());
1109
1123
 
1110
- AsyncLibgit2QueueWorker(worker);
1124
+ nodegitContext->QueueWorker(worker);
1111
1125
  return;
1112
1126
  }
1113
1127
 
1128
+ nodegit::LockMaster GitDiff::GetStatsWorker::AcquireLocks() {
1129
+ nodegit::LockMaster lockMaster(
1130
+ /*asyncAction: */true
1131
+ ,baton->diff
1132
+ );
1133
+
1134
+ return lockMaster;
1135
+ }
1136
+
1114
1137
  void GitDiff::GetStatsWorker::Execute() {
1115
1138
  git_error_clear();
1116
1139
 
1117
- {
1118
- LockMaster lockMaster(
1119
- /*asyncAction: */true
1120
- ,baton->diff
1121
- );
1122
-
1123
1140
  int result = git_diff_get_stats(
1124
1141
  &baton->out,baton->diff );
1125
1142
 
@@ -1129,28 +1146,49 @@ void GitDiff::GetStatsWorker::Execute() {
1129
1146
  baton->error = git_error_dup(git_error_last());
1130
1147
  }
1131
1148
 
1149
+ }
1150
+
1151
+ void GitDiff::GetStatsWorker::HandleErrorCallback() {
1152
+ if (!GetIsCancelled()) {
1153
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
1154
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.getStats").ToLocalChecked());
1155
+ v8::Local<v8::Value> argv[1] = {
1156
+ err
1157
+ };
1158
+ callback->Call(1, argv, async_resource);
1132
1159
  }
1160
+
1161
+ if (baton->error) {
1162
+ if (baton->error->message) {
1163
+ free((void *)baton->error->message);
1164
+ }
1165
+
1166
+ free((void *)baton->error);
1167
+ }
1168
+
1169
+
1170
+ delete baton;
1133
1171
  }
1134
1172
 
1135
1173
  void GitDiff::GetStatsWorker::HandleOKCallback() {
1136
1174
  if (baton->error_code == GIT_OK) {
1137
- v8::Local<v8::Value> to;
1175
+ v8::Local<v8::Value> v8ConversionSlot;
1138
1176
  // start convert_to_v8 block
1139
1177
  if (baton->out != NULL) {
1140
1178
  v8::Local<v8::Array> owners = Nan::New<Array>(0);
1141
1179
  Nan::Set(owners, Nan::New<v8::Number>(owners->Length()), Nan::To<v8::Object>(this->GetFromPersistent("diff")).ToLocalChecked());
1142
- to = GitDiffStats::New(
1180
+ v8ConversionSlot = GitDiffStats::New(
1143
1181
  baton->out,
1144
1182
  true
1145
1183
  , owners
1146
1184
  );
1147
1185
  }
1148
1186
  else {
1149
- to = Nan::Null();
1187
+ v8ConversionSlot = Nan::Null();
1150
1188
  }
1151
1189
  // end convert_to_v8 block
1152
- v8::Local<v8::Value> result = to;
1153
-
1190
+ v8::Local<v8::Value> result = v8ConversionSlot;
1191
+
1154
1192
  v8::Local<v8::Value> argv[2] = {
1155
1193
  Nan::Null(),
1156
1194
  result
@@ -1174,44 +1212,15 @@ void GitDiff::GetStatsWorker::HandleOKCallback() {
1174
1212
  free((void *)baton->error->message);
1175
1213
  free((void *)baton->error);
1176
1214
  } else if (baton->error_code < 0) {
1177
- std::queue< v8::Local<v8::Value> > workerArguments;
1178
1215
  bool callbackFired = false;
1179
- while(!workerArguments.empty()) {
1180
- v8::Local<v8::Value> node = workerArguments.front();
1181
- workerArguments.pop();
1182
-
1183
- if (
1184
- !node->IsObject()
1185
- || node->IsArray()
1186
- || node->IsBooleanObject()
1187
- || node->IsDate()
1188
- || node->IsFunction()
1189
- || node->IsNumberObject()
1190
- || node->IsRegExp()
1191
- || node->IsStringObject()
1192
- ) {
1193
- continue;
1194
- }
1195
-
1196
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
1197
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
1198
-
1199
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
1216
+ if (!callbackErrorHandle.IsEmpty()) {
1217
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
1218
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
1200
1219
  v8::Local<v8::Value> argv[1] = {
1201
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
1220
+ maybeError
1202
1221
  };
1203
1222
  callback->Call(1, argv, async_resource);
1204
1223
  callbackFired = true;
1205
- break;
1206
- }
1207
-
1208
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
1209
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
1210
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
1211
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
1212
- if (!nodeToQueue->IsUndefined()) {
1213
- workerArguments.push(nodeToQueue);
1214
- }
1215
1224
  }
1216
1225
  }
1217
1226
 
@@ -1260,15 +1269,19 @@ NAN_METHOD(GitDiff::IndexToIndex) {
1260
1269
  return Nan::ThrowError("DiffOptions opts is required.");
1261
1270
  }
1262
1271
 
1263
- if (info.Length() == 4 || !info[4]->IsFunction()) {
1272
+ if (!info[info.Length() - 1]->IsFunction()) {
1264
1273
  return Nan::ThrowError("Callback is required and must be a Function.");
1265
1274
  }
1266
1275
 
1267
- IndexToIndexBaton* baton = new IndexToIndexBaton;
1276
+ IndexToIndexBaton* baton = new IndexToIndexBaton();
1268
1277
 
1269
1278
  baton->error_code = GIT_OK;
1270
1279
  baton->error = NULL;
1271
1280
 
1281
+
1282
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
1283
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
1284
+
1272
1285
  // start convert_from_v8 block
1273
1286
  git_repository * from_repo = NULL;
1274
1287
  from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).ToLocalChecked())->GetValue();
@@ -1284,40 +1297,44 @@ from_old_index = Nan::ObjectWrap::Unwrap<GitIndex>(Nan::To<v8::Object>(info[1]).
1284
1297
  from_new_index = Nan::ObjectWrap::Unwrap<GitIndex>(Nan::To<v8::Object>(info[2]).ToLocalChecked())->GetValue();
1285
1298
  // end convert_from_v8 block
1286
1299
  baton->new_index = from_new_index;
1287
- // start convert_from_v8 block
1288
- const git_diff_options * from_opts = NULL;
1289
- from_opts = Nan::ObjectWrap::Unwrap<GitDiffOptions>(Nan::To<v8::Object>(info[3]).ToLocalChecked())->GetValue();
1290
- // end convert_from_v8 block
1291
- baton->opts = from_opts;
1300
+ {
1301
+ auto conversionResult = ConfigurableGitDiffOptions::fromJavascript(nodegitContext, info[3]);
1302
+ if (!conversionResult.result) {
1303
+ return Nan::ThrowError(Nan::New(conversionResult.error).ToLocalChecked());
1304
+ }
1305
+
1306
+ auto convertedObject = conversionResult.result;
1307
+ cleanupHandles["opts"] = convertedObject;
1308
+ baton->opts = convertedObject->GetValue();
1309
+ }
1310
+
1311
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
1312
+ IndexToIndexWorker *worker = new IndexToIndexWorker(baton, callback, cleanupHandles);
1292
1313
 
1293
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[4]));
1294
- IndexToIndexWorker *worker = new IndexToIndexWorker(baton, callback);
1314
+ worker->Reference<GitRepository>("repo", info[0]);
1315
+ worker->Reference<GitIndex>("old_index", info[1]);
1316
+ worker->Reference<GitIndex>("new_index", info[2]);
1317
+ worker->Reference("opts", info[3]);
1318
+
1319
+ nodegitContext->QueueWorker(worker);
1320
+ return;
1321
+ }
1295
1322
 
1296
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
1297
- worker->SaveToPersistent("repo", Nan::To<v8::Object>(info[0]).ToLocalChecked());
1298
- if (!info[1]->IsUndefined() && !info[1]->IsNull())
1299
- worker->SaveToPersistent("old_index", Nan::To<v8::Object>(info[1]).ToLocalChecked());
1300
- if (!info[2]->IsUndefined() && !info[2]->IsNull())
1301
- worker->SaveToPersistent("new_index", Nan::To<v8::Object>(info[2]).ToLocalChecked());
1302
- if (!info[3]->IsUndefined() && !info[3]->IsNull())
1303
- worker->SaveToPersistent("opts", Nan::To<v8::Object>(info[3]).ToLocalChecked());
1323
+ nodegit::LockMaster GitDiff::IndexToIndexWorker::AcquireLocks() {
1324
+ nodegit::LockMaster lockMaster(
1325
+ /*asyncAction: */true
1326
+ ,baton->repo
1327
+ ,baton->old_index
1328
+ ,baton->new_index
1329
+ ,baton->opts
1330
+ );
1304
1331
 
1305
- AsyncLibgit2QueueWorker(worker);
1306
- return;
1332
+ return lockMaster;
1307
1333
  }
1308
1334
 
1309
1335
  void GitDiff::IndexToIndexWorker::Execute() {
1310
1336
  git_error_clear();
1311
1337
 
1312
- {
1313
- LockMaster lockMaster(
1314
- /*asyncAction: */true
1315
- ,baton->repo
1316
- ,baton->old_index
1317
- ,baton->new_index
1318
- ,baton->opts
1319
- );
1320
-
1321
1338
  int result = git_diff_index_to_index(
1322
1339
  &baton->diff,baton->repo,baton->old_index,baton->new_index,baton->opts );
1323
1340
 
@@ -1327,28 +1344,50 @@ void GitDiff::IndexToIndexWorker::Execute() {
1327
1344
  baton->error = git_error_dup(git_error_last());
1328
1345
  }
1329
1346
 
1347
+ }
1348
+
1349
+ void GitDiff::IndexToIndexWorker::HandleErrorCallback() {
1350
+ if (!GetIsCancelled()) {
1351
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
1352
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.indexToIndex").ToLocalChecked());
1353
+ v8::Local<v8::Value> argv[1] = {
1354
+ err
1355
+ };
1356
+ callback->Call(1, argv, async_resource);
1357
+ }
1358
+
1359
+ if (baton->error) {
1360
+ if (baton->error->message) {
1361
+ free((void *)baton->error->message);
1362
+ }
1363
+
1364
+ free((void *)baton->error);
1330
1365
  }
1366
+
1367
+ git_diff_free(baton->diff);
1368
+
1369
+ delete baton;
1331
1370
  }
1332
1371
 
1333
1372
  void GitDiff::IndexToIndexWorker::HandleOKCallback() {
1334
1373
  if (baton->error_code == GIT_OK) {
1335
- v8::Local<v8::Value> to;
1374
+ v8::Local<v8::Value> v8ConversionSlot;
1336
1375
  // start convert_to_v8 block
1337
1376
  if (baton->diff != NULL) {
1338
1377
  v8::Local<v8::Array> owners = Nan::New<Array>(0);
1339
1378
  Nan::Set(owners, Nan::New<v8::Number>(owners->Length()), Nan::To<v8::Object>(this->GetFromPersistent("repo")).ToLocalChecked());
1340
- to = GitDiff::New(
1379
+ v8ConversionSlot = GitDiff::New(
1341
1380
  baton->diff,
1342
1381
  true
1343
1382
  , owners
1344
1383
  );
1345
1384
  }
1346
1385
  else {
1347
- to = Nan::Null();
1386
+ v8ConversionSlot = Nan::Null();
1348
1387
  }
1349
1388
  // end convert_to_v8 block
1350
- v8::Local<v8::Value> result = to;
1351
-
1389
+ v8::Local<v8::Value> result = v8ConversionSlot;
1390
+
1352
1391
  v8::Local<v8::Value> argv[2] = {
1353
1392
  Nan::Null(),
1354
1393
  result
@@ -1372,48 +1411,15 @@ void GitDiff::IndexToIndexWorker::HandleOKCallback() {
1372
1411
  free((void *)baton->error->message);
1373
1412
  free((void *)baton->error);
1374
1413
  } else if (baton->error_code < 0) {
1375
- std::queue< v8::Local<v8::Value> > workerArguments;
1376
- workerArguments.push(GetFromPersistent("repo"));
1377
- workerArguments.push(GetFromPersistent("old_index"));
1378
- workerArguments.push(GetFromPersistent("new_index"));
1379
- workerArguments.push(GetFromPersistent("opts"));
1380
1414
  bool callbackFired = false;
1381
- while(!workerArguments.empty()) {
1382
- v8::Local<v8::Value> node = workerArguments.front();
1383
- workerArguments.pop();
1384
-
1385
- if (
1386
- !node->IsObject()
1387
- || node->IsArray()
1388
- || node->IsBooleanObject()
1389
- || node->IsDate()
1390
- || node->IsFunction()
1391
- || node->IsNumberObject()
1392
- || node->IsRegExp()
1393
- || node->IsStringObject()
1394
- ) {
1395
- continue;
1396
- }
1397
-
1398
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
1399
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
1400
-
1401
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
1415
+ if (!callbackErrorHandle.IsEmpty()) {
1416
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
1417
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
1402
1418
  v8::Local<v8::Value> argv[1] = {
1403
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
1419
+ maybeError
1404
1420
  };
1405
1421
  callback->Call(1, argv, async_resource);
1406
1422
  callbackFired = true;
1407
- break;
1408
- }
1409
-
1410
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
1411
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
1412
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
1413
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
1414
- if (!nodeToQueue->IsUndefined()) {
1415
- workerArguments.push(nodeToQueue);
1416
- }
1417
1423
  }
1418
1424
  }
1419
1425
 
@@ -1430,6 +1436,7 @@ void GitDiff::IndexToIndexWorker::HandleOKCallback() {
1430
1436
  callback->Call(0, NULL, async_resource);
1431
1437
  }
1432
1438
 
1439
+ git_diff_free(baton->diff);
1433
1440
  }
1434
1441
 
1435
1442
 
@@ -1449,15 +1456,19 @@ NAN_METHOD(GitDiff::IndexToWorkdir) {
1449
1456
  return Nan::ThrowError("Repository repo is required.");
1450
1457
  }
1451
1458
 
1452
- if (info.Length() == 3 || !info[3]->IsFunction()) {
1459
+ if (!info[info.Length() - 1]->IsFunction()) {
1453
1460
  return Nan::ThrowError("Callback is required and must be a Function.");
1454
1461
  }
1455
1462
 
1456
- IndexToWorkdirBaton* baton = new IndexToWorkdirBaton;
1463
+ IndexToWorkdirBaton* baton = new IndexToWorkdirBaton();
1457
1464
 
1458
1465
  baton->error_code = GIT_OK;
1459
1466
  baton->error = NULL;
1460
1467
 
1468
+
1469
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
1470
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
1471
+
1461
1472
  // start convert_from_v8 block
1462
1473
  git_repository * from_repo = NULL;
1463
1474
  from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).ToLocalChecked())->GetValue();
@@ -1465,7 +1476,7 @@ from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).
1465
1476
  baton->repo = from_repo;
1466
1477
  // start convert_from_v8 block
1467
1478
  git_index * from_index = NULL;
1468
- if (info[1]->IsObject()) {
1479
+ if ((info.Length() - 1) > 1 && info[1]->IsObject()) {
1469
1480
  from_index = Nan::ObjectWrap::Unwrap<GitIndex>(Nan::To<v8::Object>(info[1]).ToLocalChecked())->GetValue();
1470
1481
  }
1471
1482
  else {
@@ -1473,42 +1484,45 @@ from_index = Nan::ObjectWrap::Unwrap<GitIndex>(Nan::To<v8::Object>(info[1]).ToLo
1473
1484
  }
1474
1485
  // end convert_from_v8 block
1475
1486
  baton->index = from_index;
1476
- // start convert_from_v8 block
1477
- const git_diff_options * from_opts = NULL;
1478
- if (info[2]->IsObject()) {
1479
- from_opts = Nan::ObjectWrap::Unwrap<GitDiffOptions>(Nan::To<v8::Object>(info[2]).ToLocalChecked())->GetValue();
1480
- }
1481
- else {
1482
- from_opts = 0;
1483
- }
1484
- // end convert_from_v8 block
1485
- baton->opts = from_opts;
1487
+ if (info[2]->IsNull() || info[2]->IsUndefined()) {
1488
+ baton->opts = nullptr;
1489
+ } else
1490
+ {
1491
+ auto conversionResult = ConfigurableGitDiffOptions::fromJavascript(nodegitContext, info[2]);
1492
+ if (!conversionResult.result) {
1493
+ return Nan::ThrowError(Nan::New(conversionResult.error).ToLocalChecked());
1494
+ }
1495
+
1496
+ auto convertedObject = conversionResult.result;
1497
+ cleanupHandles["opts"] = convertedObject;
1498
+ baton->opts = convertedObject->GetValue();
1499
+ }
1500
+
1501
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
1502
+ IndexToWorkdirWorker *worker = new IndexToWorkdirWorker(baton, callback, cleanupHandles);
1486
1503
 
1487
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[3]));
1488
- IndexToWorkdirWorker *worker = new IndexToWorkdirWorker(baton, callback);
1504
+ worker->Reference<GitRepository>("repo", info[0]);
1505
+ worker->Reference<GitIndex>("index", info[1]);
1506
+ worker->Reference("opts", info[2]);
1507
+
1508
+ nodegitContext->QueueWorker(worker);
1509
+ return;
1510
+ }
1489
1511
 
1490
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
1491
- worker->SaveToPersistent("repo", Nan::To<v8::Object>(info[0]).ToLocalChecked());
1492
- if (!info[1]->IsUndefined() && !info[1]->IsNull())
1493
- worker->SaveToPersistent("index", Nan::To<v8::Object>(info[1]).ToLocalChecked());
1494
- if (!info[2]->IsUndefined() && !info[2]->IsNull())
1495
- worker->SaveToPersistent("opts", Nan::To<v8::Object>(info[2]).ToLocalChecked());
1512
+ nodegit::LockMaster GitDiff::IndexToWorkdirWorker::AcquireLocks() {
1513
+ nodegit::LockMaster lockMaster(
1514
+ /*asyncAction: */true
1515
+ ,baton->repo
1516
+ ,baton->index
1517
+ ,baton->opts
1518
+ );
1496
1519
 
1497
- AsyncLibgit2QueueWorker(worker);
1498
- return;
1520
+ return lockMaster;
1499
1521
  }
1500
1522
 
1501
1523
  void GitDiff::IndexToWorkdirWorker::Execute() {
1502
1524
  git_error_clear();
1503
1525
 
1504
- {
1505
- LockMaster lockMaster(
1506
- /*asyncAction: */true
1507
- ,baton->repo
1508
- ,baton->index
1509
- ,baton->opts
1510
- );
1511
-
1512
1526
  int result = git_diff_index_to_workdir(
1513
1527
  &baton->diff,baton->repo,baton->index,baton->opts );
1514
1528
 
@@ -1518,28 +1532,50 @@ void GitDiff::IndexToWorkdirWorker::Execute() {
1518
1532
  baton->error = git_error_dup(git_error_last());
1519
1533
  }
1520
1534
 
1535
+ }
1536
+
1537
+ void GitDiff::IndexToWorkdirWorker::HandleErrorCallback() {
1538
+ if (!GetIsCancelled()) {
1539
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
1540
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.indexToWorkdir").ToLocalChecked());
1541
+ v8::Local<v8::Value> argv[1] = {
1542
+ err
1543
+ };
1544
+ callback->Call(1, argv, async_resource);
1545
+ }
1546
+
1547
+ if (baton->error) {
1548
+ if (baton->error->message) {
1549
+ free((void *)baton->error->message);
1550
+ }
1551
+
1552
+ free((void *)baton->error);
1521
1553
  }
1554
+
1555
+ git_diff_free(baton->diff);
1556
+
1557
+ delete baton;
1522
1558
  }
1523
1559
 
1524
1560
  void GitDiff::IndexToWorkdirWorker::HandleOKCallback() {
1525
1561
  if (baton->error_code == GIT_OK) {
1526
- v8::Local<v8::Value> to;
1562
+ v8::Local<v8::Value> v8ConversionSlot;
1527
1563
  // start convert_to_v8 block
1528
1564
  if (baton->diff != NULL) {
1529
1565
  v8::Local<v8::Array> owners = Nan::New<Array>(0);
1530
1566
  Nan::Set(owners, Nan::New<v8::Number>(owners->Length()), Nan::To<v8::Object>(this->GetFromPersistent("repo")).ToLocalChecked());
1531
- to = GitDiff::New(
1567
+ v8ConversionSlot = GitDiff::New(
1532
1568
  baton->diff,
1533
1569
  true
1534
1570
  , owners
1535
1571
  );
1536
1572
  }
1537
1573
  else {
1538
- to = Nan::Null();
1574
+ v8ConversionSlot = Nan::Null();
1539
1575
  }
1540
1576
  // end convert_to_v8 block
1541
- v8::Local<v8::Value> result = to;
1542
-
1577
+ v8::Local<v8::Value> result = v8ConversionSlot;
1578
+
1543
1579
  v8::Local<v8::Value> argv[2] = {
1544
1580
  Nan::Null(),
1545
1581
  result
@@ -1563,47 +1599,15 @@ void GitDiff::IndexToWorkdirWorker::HandleOKCallback() {
1563
1599
  free((void *)baton->error->message);
1564
1600
  free((void *)baton->error);
1565
1601
  } else if (baton->error_code < 0) {
1566
- std::queue< v8::Local<v8::Value> > workerArguments;
1567
- workerArguments.push(GetFromPersistent("repo"));
1568
- workerArguments.push(GetFromPersistent("index"));
1569
- workerArguments.push(GetFromPersistent("opts"));
1570
1602
  bool callbackFired = false;
1571
- while(!workerArguments.empty()) {
1572
- v8::Local<v8::Value> node = workerArguments.front();
1573
- workerArguments.pop();
1574
-
1575
- if (
1576
- !node->IsObject()
1577
- || node->IsArray()
1578
- || node->IsBooleanObject()
1579
- || node->IsDate()
1580
- || node->IsFunction()
1581
- || node->IsNumberObject()
1582
- || node->IsRegExp()
1583
- || node->IsStringObject()
1584
- ) {
1585
- continue;
1586
- }
1587
-
1588
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
1589
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
1590
-
1591
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
1603
+ if (!callbackErrorHandle.IsEmpty()) {
1604
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
1605
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
1592
1606
  v8::Local<v8::Value> argv[1] = {
1593
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
1607
+ maybeError
1594
1608
  };
1595
1609
  callback->Call(1, argv, async_resource);
1596
1610
  callbackFired = true;
1597
- break;
1598
- }
1599
-
1600
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
1601
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
1602
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
1603
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
1604
- if (!nodeToQueue->IsUndefined()) {
1605
- workerArguments.push(nodeToQueue);
1606
- }
1607
1611
  }
1608
1612
  }
1609
1613
 
@@ -1620,6 +1624,7 @@ void GitDiff::IndexToWorkdirWorker::HandleOKCallback() {
1620
1624
  callback->Call(0, NULL, async_resource);
1621
1625
  }
1622
1626
 
1627
+ git_diff_free(baton->diff);
1623
1628
  }
1624
1629
 
1625
1630
 
@@ -1636,7 +1641,7 @@ NAN_METHOD(GitDiff::IsSortedIcase) {
1636
1641
  git_error_clear();
1637
1642
 
1638
1643
  { // lock master scope start
1639
- LockMaster lockMaster(
1644
+ nodegit::LockMaster lockMaster(
1640
1645
  /*asyncAction: */false
1641
1646
  ,
1642
1647
  Nan::ObjectWrap::Unwrap<GitDiff>(info.This())->GetValue()
@@ -1647,11 +1652,11 @@ NAN_METHOD(GitDiff::IsSortedIcase) {
1647
1652
  );
1648
1653
 
1649
1654
 
1650
- v8::Local<v8::Value> to;
1655
+ v8::Local<v8::Value> v8ConversionSlot;
1651
1656
  // start convert_to_v8 block
1652
- to = Nan::New<Number>( result);
1657
+ v8ConversionSlot = Nan::New<Number>( result);
1653
1658
  // end convert_to_v8 block
1654
- return info.GetReturnValue().Set(scope.Escape(to));
1659
+ return info.GetReturnValue().Set(scope.Escape(v8ConversionSlot));
1655
1660
  }
1656
1661
  }
1657
1662
 
@@ -1664,15 +1669,19 @@ NAN_METHOD(GitDiff::Merge) {
1664
1669
  return Nan::ThrowError("Diff from is required.");
1665
1670
  }
1666
1671
 
1667
- if (info.Length() == 1 || !info[1]->IsFunction()) {
1672
+ if (!info[info.Length() - 1]->IsFunction()) {
1668
1673
  return Nan::ThrowError("Callback is required and must be a Function.");
1669
1674
  }
1670
1675
 
1671
- MergeBaton* baton = new MergeBaton;
1676
+ MergeBaton* baton = new MergeBaton();
1672
1677
 
1673
1678
  baton->error_code = GIT_OK;
1674
1679
  baton->error = NULL;
1675
1680
 
1681
+
1682
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
1683
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
1684
+
1676
1685
  baton->onto = Nan::ObjectWrap::Unwrap<GitDiff>(info.This())->GetValue();
1677
1686
  // start convert_from_v8 block
1678
1687
  const git_diff * from_from = NULL;
@@ -1680,27 +1689,29 @@ from_from = Nan::ObjectWrap::Unwrap<GitDiff>(Nan::To<v8::Object>(info[0]).ToLoca
1680
1689
  // end convert_from_v8 block
1681
1690
  baton->from = from_from;
1682
1691
 
1683
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[1]));
1684
- MergeWorker *worker = new MergeWorker(baton, callback);
1692
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
1693
+ MergeWorker *worker = new MergeWorker(baton, callback, cleanupHandles);
1685
1694
 
1686
- worker->SaveToPersistent("onto", info.This());
1687
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
1688
- worker->SaveToPersistent("from", Nan::To<v8::Object>(info[0]).ToLocalChecked());
1689
-
1690
- AsyncLibgit2QueueWorker(worker);
1695
+ worker->Reference<GitDiff>("onto", info.This());
1696
+ worker->Reference<GitDiff>("from", info[0]);
1697
+
1698
+ nodegitContext->QueueWorker(worker);
1691
1699
  return;
1692
1700
  }
1693
1701
 
1702
+ nodegit::LockMaster GitDiff::MergeWorker::AcquireLocks() {
1703
+ nodegit::LockMaster lockMaster(
1704
+ /*asyncAction: */true
1705
+ ,baton->onto
1706
+ ,baton->from
1707
+ );
1708
+
1709
+ return lockMaster;
1710
+ }
1711
+
1694
1712
  void GitDiff::MergeWorker::Execute() {
1695
1713
  git_error_clear();
1696
1714
 
1697
- {
1698
- LockMaster lockMaster(
1699
- /*asyncAction: */true
1700
- ,baton->onto
1701
- ,baton->from
1702
- );
1703
-
1704
1715
  int result = git_diff_merge(
1705
1716
  baton->onto,baton->from );
1706
1717
 
@@ -1710,13 +1721,34 @@ baton->onto,baton->from );
1710
1721
  baton->error = git_error_dup(git_error_last());
1711
1722
  }
1712
1723
 
1724
+ }
1725
+
1726
+ void GitDiff::MergeWorker::HandleErrorCallback() {
1727
+ if (!GetIsCancelled()) {
1728
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
1729
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.merge").ToLocalChecked());
1730
+ v8::Local<v8::Value> argv[1] = {
1731
+ err
1732
+ };
1733
+ callback->Call(1, argv, async_resource);
1713
1734
  }
1735
+
1736
+ if (baton->error) {
1737
+ if (baton->error->message) {
1738
+ free((void *)baton->error->message);
1739
+ }
1740
+
1741
+ free((void *)baton->error);
1742
+ }
1743
+
1744
+
1745
+ delete baton;
1714
1746
  }
1715
1747
 
1716
1748
  void GitDiff::MergeWorker::HandleOKCallback() {
1717
1749
  if (baton->error_code == GIT_OK) {
1718
1750
  v8::Local<v8::Value> result = Nan::Undefined();
1719
-
1751
+
1720
1752
  v8::Local<v8::Value> argv[2] = {
1721
1753
  Nan::Null(),
1722
1754
  result
@@ -1740,45 +1772,15 @@ void GitDiff::MergeWorker::HandleOKCallback() {
1740
1772
  free((void *)baton->error->message);
1741
1773
  free((void *)baton->error);
1742
1774
  } else if (baton->error_code < 0) {
1743
- std::queue< v8::Local<v8::Value> > workerArguments;
1744
- workerArguments.push(GetFromPersistent("from"));
1745
1775
  bool callbackFired = false;
1746
- while(!workerArguments.empty()) {
1747
- v8::Local<v8::Value> node = workerArguments.front();
1748
- workerArguments.pop();
1749
-
1750
- if (
1751
- !node->IsObject()
1752
- || node->IsArray()
1753
- || node->IsBooleanObject()
1754
- || node->IsDate()
1755
- || node->IsFunction()
1756
- || node->IsNumberObject()
1757
- || node->IsRegExp()
1758
- || node->IsStringObject()
1759
- ) {
1760
- continue;
1761
- }
1762
-
1763
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
1764
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
1765
-
1766
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
1776
+ if (!callbackErrorHandle.IsEmpty()) {
1777
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
1778
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
1767
1779
  v8::Local<v8::Value> argv[1] = {
1768
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
1780
+ maybeError
1769
1781
  };
1770
1782
  callback->Call(1, argv, async_resource);
1771
1783
  callbackFired = true;
1772
- break;
1773
- }
1774
-
1775
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
1776
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
1777
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
1778
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
1779
- if (!nodeToQueue->IsUndefined()) {
1780
- workerArguments.push(nodeToQueue);
1781
- }
1782
1784
  }
1783
1785
  }
1784
1786
 
@@ -1811,7 +1813,7 @@ NAN_METHOD(GitDiff::NumDeltas) {
1811
1813
  git_error_clear();
1812
1814
 
1813
1815
  { // lock master scope start
1814
- LockMaster lockMaster(
1816
+ nodegit::LockMaster lockMaster(
1815
1817
  /*asyncAction: */false
1816
1818
  ,
1817
1819
  Nan::ObjectWrap::Unwrap<GitDiff>(info.This())->GetValue()
@@ -1822,11 +1824,11 @@ NAN_METHOD(GitDiff::NumDeltas) {
1822
1824
  );
1823
1825
 
1824
1826
 
1825
- v8::Local<v8::Value> to;
1827
+ v8::Local<v8::Value> v8ConversionSlot;
1826
1828
  // start convert_to_v8 block
1827
- to = Nan::New<Number>( result);
1829
+ v8ConversionSlot = Nan::New<Number>( result);
1828
1830
  // end convert_to_v8 block
1829
- return info.GetReturnValue().Set(scope.Escape(to));
1831
+ return info.GetReturnValue().Set(scope.Escape(v8ConversionSlot));
1830
1832
  }
1831
1833
  }
1832
1834
 
@@ -1840,45 +1842,56 @@ NAN_METHOD(GitDiff::Patchid) {
1840
1842
  return Nan::ThrowError("DiffPatchidOptions opts is required.");
1841
1843
  }
1842
1844
 
1843
- if (info.Length() == 1 || !info[1]->IsFunction()) {
1845
+ if (!info[info.Length() - 1]->IsFunction()) {
1844
1846
  return Nan::ThrowError("Callback is required and must be a Function.");
1845
1847
  }
1846
1848
 
1847
- PatchidBaton* baton = new PatchidBaton;
1849
+ PatchidBaton* baton = new PatchidBaton();
1848
1850
 
1849
1851
  baton->error_code = GIT_OK;
1850
1852
  baton->error = NULL;
1851
1853
 
1854
+
1855
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
1856
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
1857
+
1852
1858
  baton->out = (git_oid *)malloc(sizeof(git_oid ));
1853
1859
  baton->diff = Nan::ObjectWrap::Unwrap<GitDiff>(info.This())->GetValue();
1854
- // start convert_from_v8 block
1855
- git_diff_patchid_options * from_opts = NULL;
1856
- from_opts = Nan::ObjectWrap::Unwrap<GitDiffPatchidOptions>(Nan::To<v8::Object>(info[0]).ToLocalChecked())->GetValue();
1857
- // end convert_from_v8 block
1858
- baton->opts = from_opts;
1860
+ {
1861
+ auto conversionResult = ConfigurableGitDiffPatchidOptions::fromJavascript(nodegitContext, info[0]);
1862
+ if (!conversionResult.result) {
1863
+ return Nan::ThrowError(Nan::New(conversionResult.error).ToLocalChecked());
1864
+ }
1865
+
1866
+ auto convertedObject = conversionResult.result;
1867
+ cleanupHandles["opts"] = convertedObject;
1868
+ baton->opts = convertedObject->GetValue();
1869
+ }
1870
+
1871
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
1872
+ PatchidWorker *worker = new PatchidWorker(baton, callback, cleanupHandles);
1859
1873
 
1860
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[1]));
1861
- PatchidWorker *worker = new PatchidWorker(baton, callback);
1874
+ worker->Reference<GitDiff>("diff", info.This());
1875
+ worker->Reference("opts", info[0]);
1876
+
1877
+ nodegitContext->QueueWorker(worker);
1878
+ return;
1879
+ }
1862
1880
 
1863
- worker->SaveToPersistent("diff", info.This());
1864
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
1865
- worker->SaveToPersistent("opts", Nan::To<v8::Object>(info[0]).ToLocalChecked());
1881
+ nodegit::LockMaster GitDiff::PatchidWorker::AcquireLocks() {
1882
+ nodegit::LockMaster lockMaster(
1883
+ /*asyncAction: */true
1884
+ ,baton->out
1885
+ ,baton->diff
1886
+ ,baton->opts
1887
+ );
1866
1888
 
1867
- AsyncLibgit2QueueWorker(worker);
1868
- return;
1889
+ return lockMaster;
1869
1890
  }
1870
1891
 
1871
1892
  void GitDiff::PatchidWorker::Execute() {
1872
1893
  git_error_clear();
1873
1894
 
1874
- {
1875
- LockMaster lockMaster(
1876
- /*asyncAction: */true
1877
- ,baton->out
1878
- ,baton->diff
1879
- ,baton->opts
1880
- );
1881
-
1882
1895
  int result = git_diff_patchid(
1883
1896
  baton->out,baton->diff,baton->opts );
1884
1897
 
@@ -1888,25 +1901,46 @@ baton->out,baton->diff,baton->opts );
1888
1901
  baton->error = git_error_dup(git_error_last());
1889
1902
  }
1890
1903
 
1904
+ }
1905
+
1906
+ void GitDiff::PatchidWorker::HandleErrorCallback() {
1907
+ if (!GetIsCancelled()) {
1908
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
1909
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.patchid").ToLocalChecked());
1910
+ v8::Local<v8::Value> argv[1] = {
1911
+ err
1912
+ };
1913
+ callback->Call(1, argv, async_resource);
1891
1914
  }
1915
+
1916
+ if (baton->error) {
1917
+ if (baton->error->message) {
1918
+ free((void *)baton->error->message);
1919
+ }
1920
+
1921
+ free((void *)baton->error);
1922
+ }
1923
+
1924
+
1925
+ delete baton;
1892
1926
  }
1893
1927
 
1894
1928
  void GitDiff::PatchidWorker::HandleOKCallback() {
1895
1929
  if (baton->error_code == GIT_OK) {
1896
- v8::Local<v8::Value> to;
1930
+ v8::Local<v8::Value> v8ConversionSlot;
1897
1931
  // start convert_to_v8 block
1898
1932
  if (baton->out != NULL) {
1899
- to = GitOid::New(
1933
+ v8ConversionSlot = GitOid::New(
1900
1934
  baton->out,
1901
1935
  true
1902
1936
  );
1903
1937
  }
1904
1938
  else {
1905
- to = Nan::Null();
1939
+ v8ConversionSlot = Nan::Null();
1906
1940
  }
1907
1941
  // end convert_to_v8 block
1908
- v8::Local<v8::Value> result = to;
1909
-
1942
+ v8::Local<v8::Value> result = v8ConversionSlot;
1943
+
1910
1944
  v8::Local<v8::Value> argv[2] = {
1911
1945
  Nan::Null(),
1912
1946
  result
@@ -1930,45 +1964,15 @@ void GitDiff::PatchidWorker::HandleOKCallback() {
1930
1964
  free((void *)baton->error->message);
1931
1965
  free((void *)baton->error);
1932
1966
  } else if (baton->error_code < 0) {
1933
- std::queue< v8::Local<v8::Value> > workerArguments;
1934
- workerArguments.push(GetFromPersistent("opts"));
1935
1967
  bool callbackFired = false;
1936
- while(!workerArguments.empty()) {
1937
- v8::Local<v8::Value> node = workerArguments.front();
1938
- workerArguments.pop();
1939
-
1940
- if (
1941
- !node->IsObject()
1942
- || node->IsArray()
1943
- || node->IsBooleanObject()
1944
- || node->IsDate()
1945
- || node->IsFunction()
1946
- || node->IsNumberObject()
1947
- || node->IsRegExp()
1948
- || node->IsStringObject()
1949
- ) {
1950
- continue;
1951
- }
1952
-
1953
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
1954
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
1955
-
1956
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
1968
+ if (!callbackErrorHandle.IsEmpty()) {
1969
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
1970
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
1957
1971
  v8::Local<v8::Value> argv[1] = {
1958
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
1972
+ maybeError
1959
1973
  };
1960
1974
  callback->Call(1, argv, async_resource);
1961
1975
  callbackFired = true;
1962
- break;
1963
- }
1964
-
1965
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
1966
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
1967
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
1968
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
1969
- if (!nodeToQueue->IsUndefined()) {
1970
- workerArguments.push(nodeToQueue);
1971
- }
1972
1976
  }
1973
1977
  }
1974
1978
 
@@ -2002,15 +2006,19 @@ NAN_METHOD(GitDiff::ToBuf) {
2002
2006
  return Nan::ThrowError("Number format is required.");
2003
2007
  }
2004
2008
 
2005
- if (info.Length() == 1 || !info[1]->IsFunction()) {
2009
+ if (!info[info.Length() - 1]->IsFunction()) {
2006
2010
  return Nan::ThrowError("Callback is required and must be a Function.");
2007
2011
  }
2008
2012
 
2009
- ToBufBaton* baton = new ToBufBaton;
2013
+ ToBufBaton* baton = new ToBufBaton();
2010
2014
 
2011
2015
  baton->error_code = GIT_OK;
2012
2016
  baton->error = NULL;
2013
2017
 
2018
+
2019
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
2020
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
2021
+
2014
2022
  baton->out = (git_buf *)malloc(sizeof(git_buf ));
2015
2023
  baton->out->ptr = NULL;
2016
2024
  baton->out->size = baton->out->asize = 0;
@@ -2021,27 +2029,29 @@ NAN_METHOD(GitDiff::ToBuf) {
2021
2029
  // end convert_from_v8 block
2022
2030
  baton->format = from_format;
2023
2031
 
2024
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[1]));
2025
- ToBufWorker *worker = new ToBufWorker(baton, callback);
2026
-
2027
- worker->SaveToPersistent("diff", info.This());
2028
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
2029
- worker->SaveToPersistent("format", Nan::To<v8::Object>(info[0]).ToLocalChecked());
2032
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
2033
+ ToBufWorker *worker = new ToBufWorker(baton, callback, cleanupHandles);
2030
2034
 
2031
- AsyncLibgit2QueueWorker(worker);
2035
+ worker->Reference<GitDiff>("diff", info.This());
2036
+ worker->Reference("format", info[0]);
2037
+
2038
+ nodegitContext->QueueWorker(worker);
2032
2039
  return;
2033
2040
  }
2034
2041
 
2042
+ nodegit::LockMaster GitDiff::ToBufWorker::AcquireLocks() {
2043
+ nodegit::LockMaster lockMaster(
2044
+ /*asyncAction: */true
2045
+ ,baton->out
2046
+ ,baton->diff
2047
+ );
2048
+
2049
+ return lockMaster;
2050
+ }
2051
+
2035
2052
  void GitDiff::ToBufWorker::Execute() {
2036
2053
  git_error_clear();
2037
2054
 
2038
- {
2039
- LockMaster lockMaster(
2040
- /*asyncAction: */true
2041
- ,baton->out
2042
- ,baton->diff
2043
- );
2044
-
2045
2055
  int result = git_diff_to_buf(
2046
2056
  baton->out,baton->diff,baton->format );
2047
2057
 
@@ -2051,22 +2061,45 @@ baton->out,baton->diff,baton->format );
2051
2061
  baton->error = git_error_dup(git_error_last());
2052
2062
  }
2053
2063
 
2064
+ }
2065
+
2066
+ void GitDiff::ToBufWorker::HandleErrorCallback() {
2067
+ if (!GetIsCancelled()) {
2068
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
2069
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.toBuf").ToLocalChecked());
2070
+ v8::Local<v8::Value> argv[1] = {
2071
+ err
2072
+ };
2073
+ callback->Call(1, argv, async_resource);
2074
+ }
2075
+
2076
+ if (baton->error) {
2077
+ if (baton->error->message) {
2078
+ free((void *)baton->error->message);
2079
+ }
2080
+
2081
+ free((void *)baton->error);
2054
2082
  }
2083
+
2084
+ git_buf_dispose(baton->out);
2085
+ free((void *)baton->out);
2086
+
2087
+ delete baton;
2055
2088
  }
2056
2089
 
2057
2090
  void GitDiff::ToBufWorker::HandleOKCallback() {
2058
2091
  if (baton->error_code == GIT_OK) {
2059
- v8::Local<v8::Value> to;
2092
+ v8::Local<v8::Value> v8ConversionSlot;
2060
2093
  // start convert_to_v8 block
2061
2094
  if (baton->out) {
2062
- to = Nan::New<v8::String>(baton->out->ptr, baton->out->size).ToLocalChecked();
2095
+ v8ConversionSlot = Nan::New<v8::String>(baton->out->ptr, baton->out->size).ToLocalChecked();
2063
2096
  }
2064
2097
  else {
2065
- to = Nan::Null();
2098
+ v8ConversionSlot = Nan::Null();
2066
2099
  }
2067
2100
  // end convert_to_v8 block
2068
- v8::Local<v8::Value> result = to;
2069
-
2101
+ v8::Local<v8::Value> result = v8ConversionSlot;
2102
+
2070
2103
  v8::Local<v8::Value> argv[2] = {
2071
2104
  Nan::Null(),
2072
2105
  result
@@ -2090,45 +2123,15 @@ void GitDiff::ToBufWorker::HandleOKCallback() {
2090
2123
  free((void *)baton->error->message);
2091
2124
  free((void *)baton->error);
2092
2125
  } else if (baton->error_code < 0) {
2093
- std::queue< v8::Local<v8::Value> > workerArguments;
2094
- workerArguments.push(GetFromPersistent("format"));
2095
2126
  bool callbackFired = false;
2096
- while(!workerArguments.empty()) {
2097
- v8::Local<v8::Value> node = workerArguments.front();
2098
- workerArguments.pop();
2099
-
2100
- if (
2101
- !node->IsObject()
2102
- || node->IsArray()
2103
- || node->IsBooleanObject()
2104
- || node->IsDate()
2105
- || node->IsFunction()
2106
- || node->IsNumberObject()
2107
- || node->IsRegExp()
2108
- || node->IsStringObject()
2109
- ) {
2110
- continue;
2111
- }
2112
-
2113
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
2114
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
2115
-
2116
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
2127
+ if (!callbackErrorHandle.IsEmpty()) {
2128
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
2129
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
2117
2130
  v8::Local<v8::Value> argv[1] = {
2118
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
2131
+ maybeError
2119
2132
  };
2120
2133
  callback->Call(1, argv, async_resource);
2121
2134
  callbackFired = true;
2122
- break;
2123
- }
2124
-
2125
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
2126
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
2127
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
2128
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
2129
- if (!nodeToQueue->IsUndefined()) {
2130
- workerArguments.push(nodeToQueue);
2131
- }
2132
2135
  }
2133
2136
  }
2134
2137
 
@@ -2167,15 +2170,19 @@ NAN_METHOD(GitDiff::TreeToIndex) {
2167
2170
  return Nan::ThrowError("Repository repo is required.");
2168
2171
  }
2169
2172
 
2170
- if (info.Length() == 4 || !info[4]->IsFunction()) {
2173
+ if (!info[info.Length() - 1]->IsFunction()) {
2171
2174
  return Nan::ThrowError("Callback is required and must be a Function.");
2172
2175
  }
2173
2176
 
2174
- TreeToIndexBaton* baton = new TreeToIndexBaton;
2177
+ TreeToIndexBaton* baton = new TreeToIndexBaton();
2175
2178
 
2176
2179
  baton->error_code = GIT_OK;
2177
2180
  baton->error = NULL;
2178
2181
 
2182
+
2183
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
2184
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
2185
+
2179
2186
  // start convert_from_v8 block
2180
2187
  git_repository * from_repo = NULL;
2181
2188
  from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).ToLocalChecked())->GetValue();
@@ -2183,7 +2190,7 @@ from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).
2183
2190
  baton->repo = from_repo;
2184
2191
  // start convert_from_v8 block
2185
2192
  git_tree * from_old_tree = NULL;
2186
- if (info[1]->IsObject()) {
2193
+ if ((info.Length() - 1) > 1 && info[1]->IsObject()) {
2187
2194
  from_old_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[1]).ToLocalChecked())->GetValue();
2188
2195
  }
2189
2196
  else {
@@ -2193,7 +2200,7 @@ from_old_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[1]).To
2193
2200
  baton->old_tree = from_old_tree;
2194
2201
  // start convert_from_v8 block
2195
2202
  git_index * from_index = NULL;
2196
- if (info[2]->IsObject()) {
2203
+ if ((info.Length() - 1) > 2 && info[2]->IsObject()) {
2197
2204
  from_index = Nan::ObjectWrap::Unwrap<GitIndex>(Nan::To<v8::Object>(info[2]).ToLocalChecked())->GetValue();
2198
2205
  }
2199
2206
  else {
@@ -2201,45 +2208,47 @@ from_index = Nan::ObjectWrap::Unwrap<GitIndex>(Nan::To<v8::Object>(info[2]).ToLo
2201
2208
  }
2202
2209
  // end convert_from_v8 block
2203
2210
  baton->index = from_index;
2204
- // start convert_from_v8 block
2205
- const git_diff_options * from_opts = NULL;
2206
- if (info[3]->IsObject()) {
2207
- from_opts = Nan::ObjectWrap::Unwrap<GitDiffOptions>(Nan::To<v8::Object>(info[3]).ToLocalChecked())->GetValue();
2208
- }
2209
- else {
2210
- from_opts = 0;
2211
- }
2212
- // end convert_from_v8 block
2213
- baton->opts = from_opts;
2211
+ if (info[3]->IsNull() || info[3]->IsUndefined()) {
2212
+ baton->opts = nullptr;
2213
+ } else
2214
+ {
2215
+ auto conversionResult = ConfigurableGitDiffOptions::fromJavascript(nodegitContext, info[3]);
2216
+ if (!conversionResult.result) {
2217
+ return Nan::ThrowError(Nan::New(conversionResult.error).ToLocalChecked());
2218
+ }
2219
+
2220
+ auto convertedObject = conversionResult.result;
2221
+ cleanupHandles["opts"] = convertedObject;
2222
+ baton->opts = convertedObject->GetValue();
2223
+ }
2224
+
2225
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
2226
+ TreeToIndexWorker *worker = new TreeToIndexWorker(baton, callback, cleanupHandles);
2214
2227
 
2215
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[4]));
2216
- TreeToIndexWorker *worker = new TreeToIndexWorker(baton, callback);
2228
+ worker->Reference<GitRepository>("repo", info[0]);
2229
+ worker->Reference<GitTree>("old_tree", info[1]);
2230
+ worker->Reference<GitIndex>("index", info[2]);
2231
+ worker->Reference("opts", info[3]);
2232
+
2233
+ nodegitContext->QueueWorker(worker);
2234
+ return;
2235
+ }
2217
2236
 
2218
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
2219
- worker->SaveToPersistent("repo", Nan::To<v8::Object>(info[0]).ToLocalChecked());
2220
- if (!info[1]->IsUndefined() && !info[1]->IsNull())
2221
- worker->SaveToPersistent("old_tree", Nan::To<v8::Object>(info[1]).ToLocalChecked());
2222
- if (!info[2]->IsUndefined() && !info[2]->IsNull())
2223
- worker->SaveToPersistent("index", Nan::To<v8::Object>(info[2]).ToLocalChecked());
2224
- if (!info[3]->IsUndefined() && !info[3]->IsNull())
2225
- worker->SaveToPersistent("opts", Nan::To<v8::Object>(info[3]).ToLocalChecked());
2237
+ nodegit::LockMaster GitDiff::TreeToIndexWorker::AcquireLocks() {
2238
+ nodegit::LockMaster lockMaster(
2239
+ /*asyncAction: */true
2240
+ ,baton->repo
2241
+ ,baton->old_tree
2242
+ ,baton->index
2243
+ ,baton->opts
2244
+ );
2226
2245
 
2227
- AsyncLibgit2QueueWorker(worker);
2228
- return;
2246
+ return lockMaster;
2229
2247
  }
2230
2248
 
2231
2249
  void GitDiff::TreeToIndexWorker::Execute() {
2232
2250
  git_error_clear();
2233
2251
 
2234
- {
2235
- LockMaster lockMaster(
2236
- /*asyncAction: */true
2237
- ,baton->repo
2238
- ,baton->old_tree
2239
- ,baton->index
2240
- ,baton->opts
2241
- );
2242
-
2243
2252
  int result = git_diff_tree_to_index(
2244
2253
  &baton->diff,baton->repo,baton->old_tree,baton->index,baton->opts );
2245
2254
 
@@ -2249,28 +2258,50 @@ void GitDiff::TreeToIndexWorker::Execute() {
2249
2258
  baton->error = git_error_dup(git_error_last());
2250
2259
  }
2251
2260
 
2261
+ }
2262
+
2263
+ void GitDiff::TreeToIndexWorker::HandleErrorCallback() {
2264
+ if (!GetIsCancelled()) {
2265
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
2266
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.treeToIndex").ToLocalChecked());
2267
+ v8::Local<v8::Value> argv[1] = {
2268
+ err
2269
+ };
2270
+ callback->Call(1, argv, async_resource);
2271
+ }
2272
+
2273
+ if (baton->error) {
2274
+ if (baton->error->message) {
2275
+ free((void *)baton->error->message);
2276
+ }
2277
+
2278
+ free((void *)baton->error);
2252
2279
  }
2280
+
2281
+ git_diff_free(baton->diff);
2282
+
2283
+ delete baton;
2253
2284
  }
2254
2285
 
2255
2286
  void GitDiff::TreeToIndexWorker::HandleOKCallback() {
2256
2287
  if (baton->error_code == GIT_OK) {
2257
- v8::Local<v8::Value> to;
2288
+ v8::Local<v8::Value> v8ConversionSlot;
2258
2289
  // start convert_to_v8 block
2259
2290
  if (baton->diff != NULL) {
2260
2291
  v8::Local<v8::Array> owners = Nan::New<Array>(0);
2261
2292
  Nan::Set(owners, Nan::New<v8::Number>(owners->Length()), Nan::To<v8::Object>(this->GetFromPersistent("repo")).ToLocalChecked());
2262
- to = GitDiff::New(
2293
+ v8ConversionSlot = GitDiff::New(
2263
2294
  baton->diff,
2264
2295
  true
2265
2296
  , owners
2266
2297
  );
2267
2298
  }
2268
2299
  else {
2269
- to = Nan::Null();
2300
+ v8ConversionSlot = Nan::Null();
2270
2301
  }
2271
2302
  // end convert_to_v8 block
2272
- v8::Local<v8::Value> result = to;
2273
-
2303
+ v8::Local<v8::Value> result = v8ConversionSlot;
2304
+
2274
2305
  v8::Local<v8::Value> argv[2] = {
2275
2306
  Nan::Null(),
2276
2307
  result
@@ -2294,48 +2325,15 @@ void GitDiff::TreeToIndexWorker::HandleOKCallback() {
2294
2325
  free((void *)baton->error->message);
2295
2326
  free((void *)baton->error);
2296
2327
  } else if (baton->error_code < 0) {
2297
- std::queue< v8::Local<v8::Value> > workerArguments;
2298
- workerArguments.push(GetFromPersistent("repo"));
2299
- workerArguments.push(GetFromPersistent("old_tree"));
2300
- workerArguments.push(GetFromPersistent("index"));
2301
- workerArguments.push(GetFromPersistent("opts"));
2302
2328
  bool callbackFired = false;
2303
- while(!workerArguments.empty()) {
2304
- v8::Local<v8::Value> node = workerArguments.front();
2305
- workerArguments.pop();
2306
-
2307
- if (
2308
- !node->IsObject()
2309
- || node->IsArray()
2310
- || node->IsBooleanObject()
2311
- || node->IsDate()
2312
- || node->IsFunction()
2313
- || node->IsNumberObject()
2314
- || node->IsRegExp()
2315
- || node->IsStringObject()
2316
- ) {
2317
- continue;
2318
- }
2319
-
2320
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
2321
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
2322
-
2323
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
2329
+ if (!callbackErrorHandle.IsEmpty()) {
2330
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
2331
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
2324
2332
  v8::Local<v8::Value> argv[1] = {
2325
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
2333
+ maybeError
2326
2334
  };
2327
2335
  callback->Call(1, argv, async_resource);
2328
2336
  callbackFired = true;
2329
- break;
2330
- }
2331
-
2332
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
2333
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
2334
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
2335
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
2336
- if (!nodeToQueue->IsUndefined()) {
2337
- workerArguments.push(nodeToQueue);
2338
- }
2339
2337
  }
2340
2338
  }
2341
2339
 
@@ -2352,6 +2350,7 @@ void GitDiff::TreeToIndexWorker::HandleOKCallback() {
2352
2350
  callback->Call(0, NULL, async_resource);
2353
2351
  }
2354
2352
 
2353
+ git_diff_free(baton->diff);
2355
2354
  }
2356
2355
 
2357
2356
 
@@ -2372,15 +2371,19 @@ NAN_METHOD(GitDiff::TreeToTree) {
2372
2371
  return Nan::ThrowError("Repository repo is required.");
2373
2372
  }
2374
2373
 
2375
- if (info.Length() == 4 || !info[4]->IsFunction()) {
2374
+ if (!info[info.Length() - 1]->IsFunction()) {
2376
2375
  return Nan::ThrowError("Callback is required and must be a Function.");
2377
2376
  }
2378
2377
 
2379
- TreeToTreeBaton* baton = new TreeToTreeBaton;
2378
+ TreeToTreeBaton* baton = new TreeToTreeBaton();
2380
2379
 
2381
2380
  baton->error_code = GIT_OK;
2382
2381
  baton->error = NULL;
2383
2382
 
2383
+
2384
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
2385
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
2386
+
2384
2387
  // start convert_from_v8 block
2385
2388
  git_repository * from_repo = NULL;
2386
2389
  from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).ToLocalChecked())->GetValue();
@@ -2388,7 +2391,7 @@ from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).
2388
2391
  baton->repo = from_repo;
2389
2392
  // start convert_from_v8 block
2390
2393
  git_tree * from_old_tree = NULL;
2391
- if (info[1]->IsObject()) {
2394
+ if ((info.Length() - 1) > 1 && info[1]->IsObject()) {
2392
2395
  from_old_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[1]).ToLocalChecked())->GetValue();
2393
2396
  }
2394
2397
  else {
@@ -2398,7 +2401,7 @@ from_old_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[1]).To
2398
2401
  baton->old_tree = from_old_tree;
2399
2402
  // start convert_from_v8 block
2400
2403
  git_tree * from_new_tree = NULL;
2401
- if (info[2]->IsObject()) {
2404
+ if ((info.Length() - 1) > 2 && info[2]->IsObject()) {
2402
2405
  from_new_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[2]).ToLocalChecked())->GetValue();
2403
2406
  }
2404
2407
  else {
@@ -2406,45 +2409,47 @@ from_new_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[2]).To
2406
2409
  }
2407
2410
  // end convert_from_v8 block
2408
2411
  baton->new_tree = from_new_tree;
2409
- // start convert_from_v8 block
2410
- const git_diff_options * from_opts = NULL;
2411
- if (info[3]->IsObject()) {
2412
- from_opts = Nan::ObjectWrap::Unwrap<GitDiffOptions>(Nan::To<v8::Object>(info[3]).ToLocalChecked())->GetValue();
2413
- }
2414
- else {
2415
- from_opts = 0;
2416
- }
2417
- // end convert_from_v8 block
2418
- baton->opts = from_opts;
2412
+ if (info[3]->IsNull() || info[3]->IsUndefined()) {
2413
+ baton->opts = nullptr;
2414
+ } else
2415
+ {
2416
+ auto conversionResult = ConfigurableGitDiffOptions::fromJavascript(nodegitContext, info[3]);
2417
+ if (!conversionResult.result) {
2418
+ return Nan::ThrowError(Nan::New(conversionResult.error).ToLocalChecked());
2419
+ }
2420
+
2421
+ auto convertedObject = conversionResult.result;
2422
+ cleanupHandles["opts"] = convertedObject;
2423
+ baton->opts = convertedObject->GetValue();
2424
+ }
2425
+
2426
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
2427
+ TreeToTreeWorker *worker = new TreeToTreeWorker(baton, callback, cleanupHandles);
2419
2428
 
2420
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[4]));
2421
- TreeToTreeWorker *worker = new TreeToTreeWorker(baton, callback);
2429
+ worker->Reference<GitRepository>("repo", info[0]);
2430
+ worker->Reference<GitTree>("old_tree", info[1]);
2431
+ worker->Reference<GitTree>("new_tree", info[2]);
2432
+ worker->Reference("opts", info[3]);
2433
+
2434
+ nodegitContext->QueueWorker(worker);
2435
+ return;
2436
+ }
2422
2437
 
2423
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
2424
- worker->SaveToPersistent("repo", Nan::To<v8::Object>(info[0]).ToLocalChecked());
2425
- if (!info[1]->IsUndefined() && !info[1]->IsNull())
2426
- worker->SaveToPersistent("old_tree", Nan::To<v8::Object>(info[1]).ToLocalChecked());
2427
- if (!info[2]->IsUndefined() && !info[2]->IsNull())
2428
- worker->SaveToPersistent("new_tree", Nan::To<v8::Object>(info[2]).ToLocalChecked());
2429
- if (!info[3]->IsUndefined() && !info[3]->IsNull())
2430
- worker->SaveToPersistent("opts", Nan::To<v8::Object>(info[3]).ToLocalChecked());
2438
+ nodegit::LockMaster GitDiff::TreeToTreeWorker::AcquireLocks() {
2439
+ nodegit::LockMaster lockMaster(
2440
+ /*asyncAction: */true
2441
+ ,baton->repo
2442
+ ,baton->old_tree
2443
+ ,baton->new_tree
2444
+ ,baton->opts
2445
+ );
2431
2446
 
2432
- AsyncLibgit2QueueWorker(worker);
2433
- return;
2447
+ return lockMaster;
2434
2448
  }
2435
2449
 
2436
2450
  void GitDiff::TreeToTreeWorker::Execute() {
2437
2451
  git_error_clear();
2438
2452
 
2439
- {
2440
- LockMaster lockMaster(
2441
- /*asyncAction: */true
2442
- ,baton->repo
2443
- ,baton->old_tree
2444
- ,baton->new_tree
2445
- ,baton->opts
2446
- );
2447
-
2448
2453
  int result = git_diff_tree_to_tree(
2449
2454
  &baton->diff,baton->repo,baton->old_tree,baton->new_tree,baton->opts );
2450
2455
 
@@ -2454,28 +2459,50 @@ void GitDiff::TreeToTreeWorker::Execute() {
2454
2459
  baton->error = git_error_dup(git_error_last());
2455
2460
  }
2456
2461
 
2462
+ }
2463
+
2464
+ void GitDiff::TreeToTreeWorker::HandleErrorCallback() {
2465
+ if (!GetIsCancelled()) {
2466
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
2467
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.treeToTree").ToLocalChecked());
2468
+ v8::Local<v8::Value> argv[1] = {
2469
+ err
2470
+ };
2471
+ callback->Call(1, argv, async_resource);
2457
2472
  }
2473
+
2474
+ if (baton->error) {
2475
+ if (baton->error->message) {
2476
+ free((void *)baton->error->message);
2477
+ }
2478
+
2479
+ free((void *)baton->error);
2480
+ }
2481
+
2482
+ git_diff_free(baton->diff);
2483
+
2484
+ delete baton;
2458
2485
  }
2459
2486
 
2460
2487
  void GitDiff::TreeToTreeWorker::HandleOKCallback() {
2461
2488
  if (baton->error_code == GIT_OK) {
2462
- v8::Local<v8::Value> to;
2489
+ v8::Local<v8::Value> v8ConversionSlot;
2463
2490
  // start convert_to_v8 block
2464
2491
  if (baton->diff != NULL) {
2465
2492
  v8::Local<v8::Array> owners = Nan::New<Array>(0);
2466
2493
  Nan::Set(owners, Nan::New<v8::Number>(owners->Length()), Nan::To<v8::Object>(this->GetFromPersistent("repo")).ToLocalChecked());
2467
- to = GitDiff::New(
2494
+ v8ConversionSlot = GitDiff::New(
2468
2495
  baton->diff,
2469
2496
  true
2470
2497
  , owners
2471
2498
  );
2472
2499
  }
2473
2500
  else {
2474
- to = Nan::Null();
2501
+ v8ConversionSlot = Nan::Null();
2475
2502
  }
2476
2503
  // end convert_to_v8 block
2477
- v8::Local<v8::Value> result = to;
2478
-
2504
+ v8::Local<v8::Value> result = v8ConversionSlot;
2505
+
2479
2506
  v8::Local<v8::Value> argv[2] = {
2480
2507
  Nan::Null(),
2481
2508
  result
@@ -2499,48 +2526,15 @@ void GitDiff::TreeToTreeWorker::HandleOKCallback() {
2499
2526
  free((void *)baton->error->message);
2500
2527
  free((void *)baton->error);
2501
2528
  } else if (baton->error_code < 0) {
2502
- std::queue< v8::Local<v8::Value> > workerArguments;
2503
- workerArguments.push(GetFromPersistent("repo"));
2504
- workerArguments.push(GetFromPersistent("old_tree"));
2505
- workerArguments.push(GetFromPersistent("new_tree"));
2506
- workerArguments.push(GetFromPersistent("opts"));
2507
2529
  bool callbackFired = false;
2508
- while(!workerArguments.empty()) {
2509
- v8::Local<v8::Value> node = workerArguments.front();
2510
- workerArguments.pop();
2511
-
2512
- if (
2513
- !node->IsObject()
2514
- || node->IsArray()
2515
- || node->IsBooleanObject()
2516
- || node->IsDate()
2517
- || node->IsFunction()
2518
- || node->IsNumberObject()
2519
- || node->IsRegExp()
2520
- || node->IsStringObject()
2521
- ) {
2522
- continue;
2523
- }
2524
-
2525
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
2526
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
2527
-
2528
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
2530
+ if (!callbackErrorHandle.IsEmpty()) {
2531
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
2532
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
2529
2533
  v8::Local<v8::Value> argv[1] = {
2530
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
2534
+ maybeError
2531
2535
  };
2532
2536
  callback->Call(1, argv, async_resource);
2533
2537
  callbackFired = true;
2534
- break;
2535
- }
2536
-
2537
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
2538
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
2539
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
2540
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
2541
- if (!nodeToQueue->IsUndefined()) {
2542
- workerArguments.push(nodeToQueue);
2543
- }
2544
2538
  }
2545
2539
  }
2546
2540
 
@@ -2557,6 +2551,7 @@ void GitDiff::TreeToTreeWorker::HandleOKCallback() {
2557
2551
  callback->Call(0, NULL, async_resource);
2558
2552
  }
2559
2553
 
2554
+ git_diff_free(baton->diff);
2560
2555
  }
2561
2556
 
2562
2557
 
@@ -2576,15 +2571,19 @@ NAN_METHOD(GitDiff::TreeToWorkdir) {
2576
2571
  return Nan::ThrowError("Repository repo is required.");
2577
2572
  }
2578
2573
 
2579
- if (info.Length() == 3 || !info[3]->IsFunction()) {
2574
+ if (!info[info.Length() - 1]->IsFunction()) {
2580
2575
  return Nan::ThrowError("Callback is required and must be a Function.");
2581
2576
  }
2582
2577
 
2583
- TreeToWorkdirBaton* baton = new TreeToWorkdirBaton;
2578
+ TreeToWorkdirBaton* baton = new TreeToWorkdirBaton();
2584
2579
 
2585
2580
  baton->error_code = GIT_OK;
2586
2581
  baton->error = NULL;
2587
2582
 
2583
+
2584
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
2585
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
2586
+
2588
2587
  // start convert_from_v8 block
2589
2588
  git_repository * from_repo = NULL;
2590
2589
  from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).ToLocalChecked())->GetValue();
@@ -2592,7 +2591,7 @@ from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).
2592
2591
  baton->repo = from_repo;
2593
2592
  // start convert_from_v8 block
2594
2593
  git_tree * from_old_tree = NULL;
2595
- if (info[1]->IsObject()) {
2594
+ if ((info.Length() - 1) > 1 && info[1]->IsObject()) {
2596
2595
  from_old_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[1]).ToLocalChecked())->GetValue();
2597
2596
  }
2598
2597
  else {
@@ -2600,42 +2599,45 @@ from_old_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[1]).To
2600
2599
  }
2601
2600
  // end convert_from_v8 block
2602
2601
  baton->old_tree = from_old_tree;
2603
- // start convert_from_v8 block
2604
- const git_diff_options * from_opts = NULL;
2605
- if (info[2]->IsObject()) {
2606
- from_opts = Nan::ObjectWrap::Unwrap<GitDiffOptions>(Nan::To<v8::Object>(info[2]).ToLocalChecked())->GetValue();
2607
- }
2608
- else {
2609
- from_opts = 0;
2610
- }
2611
- // end convert_from_v8 block
2612
- baton->opts = from_opts;
2602
+ if (info[2]->IsNull() || info[2]->IsUndefined()) {
2603
+ baton->opts = nullptr;
2604
+ } else
2605
+ {
2606
+ auto conversionResult = ConfigurableGitDiffOptions::fromJavascript(nodegitContext, info[2]);
2607
+ if (!conversionResult.result) {
2608
+ return Nan::ThrowError(Nan::New(conversionResult.error).ToLocalChecked());
2609
+ }
2610
+
2611
+ auto convertedObject = conversionResult.result;
2612
+ cleanupHandles["opts"] = convertedObject;
2613
+ baton->opts = convertedObject->GetValue();
2614
+ }
2615
+
2616
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
2617
+ TreeToWorkdirWorker *worker = new TreeToWorkdirWorker(baton, callback, cleanupHandles);
2613
2618
 
2614
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[3]));
2615
- TreeToWorkdirWorker *worker = new TreeToWorkdirWorker(baton, callback);
2619
+ worker->Reference<GitRepository>("repo", info[0]);
2620
+ worker->Reference<GitTree>("old_tree", info[1]);
2621
+ worker->Reference("opts", info[2]);
2622
+
2623
+ nodegitContext->QueueWorker(worker);
2624
+ return;
2625
+ }
2616
2626
 
2617
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
2618
- worker->SaveToPersistent("repo", Nan::To<v8::Object>(info[0]).ToLocalChecked());
2619
- if (!info[1]->IsUndefined() && !info[1]->IsNull())
2620
- worker->SaveToPersistent("old_tree", Nan::To<v8::Object>(info[1]).ToLocalChecked());
2621
- if (!info[2]->IsUndefined() && !info[2]->IsNull())
2622
- worker->SaveToPersistent("opts", Nan::To<v8::Object>(info[2]).ToLocalChecked());
2627
+ nodegit::LockMaster GitDiff::TreeToWorkdirWorker::AcquireLocks() {
2628
+ nodegit::LockMaster lockMaster(
2629
+ /*asyncAction: */true
2630
+ ,baton->repo
2631
+ ,baton->old_tree
2632
+ ,baton->opts
2633
+ );
2623
2634
 
2624
- AsyncLibgit2QueueWorker(worker);
2625
- return;
2635
+ return lockMaster;
2626
2636
  }
2627
2637
 
2628
2638
  void GitDiff::TreeToWorkdirWorker::Execute() {
2629
2639
  git_error_clear();
2630
2640
 
2631
- {
2632
- LockMaster lockMaster(
2633
- /*asyncAction: */true
2634
- ,baton->repo
2635
- ,baton->old_tree
2636
- ,baton->opts
2637
- );
2638
-
2639
2641
  int result = git_diff_tree_to_workdir(
2640
2642
  &baton->diff,baton->repo,baton->old_tree,baton->opts );
2641
2643
 
@@ -2645,28 +2647,50 @@ void GitDiff::TreeToWorkdirWorker::Execute() {
2645
2647
  baton->error = git_error_dup(git_error_last());
2646
2648
  }
2647
2649
 
2650
+ }
2651
+
2652
+ void GitDiff::TreeToWorkdirWorker::HandleErrorCallback() {
2653
+ if (!GetIsCancelled()) {
2654
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
2655
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.treeToWorkdir").ToLocalChecked());
2656
+ v8::Local<v8::Value> argv[1] = {
2657
+ err
2658
+ };
2659
+ callback->Call(1, argv, async_resource);
2648
2660
  }
2661
+
2662
+ if (baton->error) {
2663
+ if (baton->error->message) {
2664
+ free((void *)baton->error->message);
2665
+ }
2666
+
2667
+ free((void *)baton->error);
2668
+ }
2669
+
2670
+ git_diff_free(baton->diff);
2671
+
2672
+ delete baton;
2649
2673
  }
2650
2674
 
2651
2675
  void GitDiff::TreeToWorkdirWorker::HandleOKCallback() {
2652
2676
  if (baton->error_code == GIT_OK) {
2653
- v8::Local<v8::Value> to;
2677
+ v8::Local<v8::Value> v8ConversionSlot;
2654
2678
  // start convert_to_v8 block
2655
2679
  if (baton->diff != NULL) {
2656
2680
  v8::Local<v8::Array> owners = Nan::New<Array>(0);
2657
2681
  Nan::Set(owners, Nan::New<v8::Number>(owners->Length()), Nan::To<v8::Object>(this->GetFromPersistent("repo")).ToLocalChecked());
2658
- to = GitDiff::New(
2682
+ v8ConversionSlot = GitDiff::New(
2659
2683
  baton->diff,
2660
2684
  true
2661
2685
  , owners
2662
2686
  );
2663
2687
  }
2664
2688
  else {
2665
- to = Nan::Null();
2689
+ v8ConversionSlot = Nan::Null();
2666
2690
  }
2667
2691
  // end convert_to_v8 block
2668
- v8::Local<v8::Value> result = to;
2669
-
2692
+ v8::Local<v8::Value> result = v8ConversionSlot;
2693
+
2670
2694
  v8::Local<v8::Value> argv[2] = {
2671
2695
  Nan::Null(),
2672
2696
  result
@@ -2690,47 +2714,15 @@ void GitDiff::TreeToWorkdirWorker::HandleOKCallback() {
2690
2714
  free((void *)baton->error->message);
2691
2715
  free((void *)baton->error);
2692
2716
  } else if (baton->error_code < 0) {
2693
- std::queue< v8::Local<v8::Value> > workerArguments;
2694
- workerArguments.push(GetFromPersistent("repo"));
2695
- workerArguments.push(GetFromPersistent("old_tree"));
2696
- workerArguments.push(GetFromPersistent("opts"));
2697
2717
  bool callbackFired = false;
2698
- while(!workerArguments.empty()) {
2699
- v8::Local<v8::Value> node = workerArguments.front();
2700
- workerArguments.pop();
2701
-
2702
- if (
2703
- !node->IsObject()
2704
- || node->IsArray()
2705
- || node->IsBooleanObject()
2706
- || node->IsDate()
2707
- || node->IsFunction()
2708
- || node->IsNumberObject()
2709
- || node->IsRegExp()
2710
- || node->IsStringObject()
2711
- ) {
2712
- continue;
2713
- }
2714
-
2715
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
2716
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
2717
-
2718
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
2718
+ if (!callbackErrorHandle.IsEmpty()) {
2719
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
2720
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
2719
2721
  v8::Local<v8::Value> argv[1] = {
2720
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
2722
+ maybeError
2721
2723
  };
2722
2724
  callback->Call(1, argv, async_resource);
2723
2725
  callbackFired = true;
2724
- break;
2725
- }
2726
-
2727
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
2728
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
2729
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
2730
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
2731
- if (!nodeToQueue->IsUndefined()) {
2732
- workerArguments.push(nodeToQueue);
2733
- }
2734
2726
  }
2735
2727
  }
2736
2728
 
@@ -2747,6 +2739,7 @@ void GitDiff::TreeToWorkdirWorker::HandleOKCallback() {
2747
2739
  callback->Call(0, NULL, async_resource);
2748
2740
  }
2749
2741
 
2742
+ git_diff_free(baton->diff);
2750
2743
  }
2751
2744
 
2752
2745
 
@@ -2766,15 +2759,19 @@ NAN_METHOD(GitDiff::TreeToWorkdirWithIndex) {
2766
2759
  return Nan::ThrowError("Repository repo is required.");
2767
2760
  }
2768
2761
 
2769
- if (info.Length() == 3 || !info[3]->IsFunction()) {
2762
+ if (!info[info.Length() - 1]->IsFunction()) {
2770
2763
  return Nan::ThrowError("Callback is required and must be a Function.");
2771
2764
  }
2772
2765
 
2773
- TreeToWorkdirWithIndexBaton* baton = new TreeToWorkdirWithIndexBaton;
2766
+ TreeToWorkdirWithIndexBaton* baton = new TreeToWorkdirWithIndexBaton();
2774
2767
 
2775
2768
  baton->error_code = GIT_OK;
2776
2769
  baton->error = NULL;
2777
2770
 
2771
+
2772
+ nodegit::Context *nodegitContext = reinterpret_cast<nodegit::Context *>(info.Data().As<External>()->Value());
2773
+ std::map<std::string, std::shared_ptr<nodegit::CleanupHandle>> cleanupHandles;
2774
+
2778
2775
  // start convert_from_v8 block
2779
2776
  git_repository * from_repo = NULL;
2780
2777
  from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).ToLocalChecked())->GetValue();
@@ -2782,7 +2779,7 @@ from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(Nan::To<v8::Object>(info[0]).
2782
2779
  baton->repo = from_repo;
2783
2780
  // start convert_from_v8 block
2784
2781
  git_tree * from_old_tree = NULL;
2785
- if (info[1]->IsObject()) {
2782
+ if ((info.Length() - 1) > 1 && info[1]->IsObject()) {
2786
2783
  from_old_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[1]).ToLocalChecked())->GetValue();
2787
2784
  }
2788
2785
  else {
@@ -2790,42 +2787,45 @@ from_old_tree = Nan::ObjectWrap::Unwrap<GitTree>(Nan::To<v8::Object>(info[1]).To
2790
2787
  }
2791
2788
  // end convert_from_v8 block
2792
2789
  baton->old_tree = from_old_tree;
2793
- // start convert_from_v8 block
2794
- const git_diff_options * from_opts = NULL;
2795
- if (info[2]->IsObject()) {
2796
- from_opts = Nan::ObjectWrap::Unwrap<GitDiffOptions>(Nan::To<v8::Object>(info[2]).ToLocalChecked())->GetValue();
2797
- }
2798
- else {
2799
- from_opts = 0;
2800
- }
2801
- // end convert_from_v8 block
2802
- baton->opts = from_opts;
2790
+ if (info[2]->IsNull() || info[2]->IsUndefined()) {
2791
+ baton->opts = nullptr;
2792
+ } else
2793
+ {
2794
+ auto conversionResult = ConfigurableGitDiffOptions::fromJavascript(nodegitContext, info[2]);
2795
+ if (!conversionResult.result) {
2796
+ return Nan::ThrowError(Nan::New(conversionResult.error).ToLocalChecked());
2797
+ }
2798
+
2799
+ auto convertedObject = conversionResult.result;
2800
+ cleanupHandles["opts"] = convertedObject;
2801
+ baton->opts = convertedObject->GetValue();
2802
+ }
2803
+
2804
+ Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[info.Length() - 1]));
2805
+ TreeToWorkdirWithIndexWorker *worker = new TreeToWorkdirWithIndexWorker(baton, callback, cleanupHandles);
2803
2806
 
2804
- Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[3]));
2805
- TreeToWorkdirWithIndexWorker *worker = new TreeToWorkdirWithIndexWorker(baton, callback);
2807
+ worker->Reference<GitRepository>("repo", info[0]);
2808
+ worker->Reference<GitTree>("old_tree", info[1]);
2809
+ worker->Reference("opts", info[2]);
2810
+
2811
+ nodegitContext->QueueWorker(worker);
2812
+ return;
2813
+ }
2806
2814
 
2807
- if (!info[0]->IsUndefined() && !info[0]->IsNull())
2808
- worker->SaveToPersistent("repo", Nan::To<v8::Object>(info[0]).ToLocalChecked());
2809
- if (!info[1]->IsUndefined() && !info[1]->IsNull())
2810
- worker->SaveToPersistent("old_tree", Nan::To<v8::Object>(info[1]).ToLocalChecked());
2811
- if (!info[2]->IsUndefined() && !info[2]->IsNull())
2812
- worker->SaveToPersistent("opts", Nan::To<v8::Object>(info[2]).ToLocalChecked());
2815
+ nodegit::LockMaster GitDiff::TreeToWorkdirWithIndexWorker::AcquireLocks() {
2816
+ nodegit::LockMaster lockMaster(
2817
+ /*asyncAction: */true
2818
+ ,baton->repo
2819
+ ,baton->old_tree
2820
+ ,baton->opts
2821
+ );
2813
2822
 
2814
- AsyncLibgit2QueueWorker(worker);
2815
- return;
2823
+ return lockMaster;
2816
2824
  }
2817
2825
 
2818
2826
  void GitDiff::TreeToWorkdirWithIndexWorker::Execute() {
2819
2827
  git_error_clear();
2820
2828
 
2821
- {
2822
- LockMaster lockMaster(
2823
- /*asyncAction: */true
2824
- ,baton->repo
2825
- ,baton->old_tree
2826
- ,baton->opts
2827
- );
2828
-
2829
2829
  int result = git_diff_tree_to_workdir_with_index(
2830
2830
  &baton->diff,baton->repo,baton->old_tree,baton->opts );
2831
2831
 
@@ -2835,28 +2835,50 @@ void GitDiff::TreeToWorkdirWithIndexWorker::Execute() {
2835
2835
  baton->error = git_error_dup(git_error_last());
2836
2836
  }
2837
2837
 
2838
+ }
2839
+
2840
+ void GitDiff::TreeToWorkdirWithIndexWorker::HandleErrorCallback() {
2841
+ if (!GetIsCancelled()) {
2842
+ v8::Local<v8::Object> err = Nan::To<v8::Object>(Nan::Error(ErrorMessage())).ToLocalChecked();
2843
+ Nan::Set(err, Nan::New("errorFunction").ToLocalChecked(), Nan::New("Diff.treeToWorkdirWithIndex").ToLocalChecked());
2844
+ v8::Local<v8::Value> argv[1] = {
2845
+ err
2846
+ };
2847
+ callback->Call(1, argv, async_resource);
2838
2848
  }
2849
+
2850
+ if (baton->error) {
2851
+ if (baton->error->message) {
2852
+ free((void *)baton->error->message);
2853
+ }
2854
+
2855
+ free((void *)baton->error);
2856
+ }
2857
+
2858
+ git_diff_free(baton->diff);
2859
+
2860
+ delete baton;
2839
2861
  }
2840
2862
 
2841
2863
  void GitDiff::TreeToWorkdirWithIndexWorker::HandleOKCallback() {
2842
2864
  if (baton->error_code == GIT_OK) {
2843
- v8::Local<v8::Value> to;
2865
+ v8::Local<v8::Value> v8ConversionSlot;
2844
2866
  // start convert_to_v8 block
2845
2867
  if (baton->diff != NULL) {
2846
2868
  v8::Local<v8::Array> owners = Nan::New<Array>(0);
2847
2869
  Nan::Set(owners, Nan::New<v8::Number>(owners->Length()), Nan::To<v8::Object>(this->GetFromPersistent("repo")).ToLocalChecked());
2848
- to = GitDiff::New(
2870
+ v8ConversionSlot = GitDiff::New(
2849
2871
  baton->diff,
2850
2872
  true
2851
2873
  , owners
2852
2874
  );
2853
2875
  }
2854
2876
  else {
2855
- to = Nan::Null();
2877
+ v8ConversionSlot = Nan::Null();
2856
2878
  }
2857
2879
  // end convert_to_v8 block
2858
- v8::Local<v8::Value> result = to;
2859
-
2880
+ v8::Local<v8::Value> result = v8ConversionSlot;
2881
+
2860
2882
  v8::Local<v8::Value> argv[2] = {
2861
2883
  Nan::Null(),
2862
2884
  result
@@ -2880,47 +2902,15 @@ void GitDiff::TreeToWorkdirWithIndexWorker::HandleOKCallback() {
2880
2902
  free((void *)baton->error->message);
2881
2903
  free((void *)baton->error);
2882
2904
  } else if (baton->error_code < 0) {
2883
- std::queue< v8::Local<v8::Value> > workerArguments;
2884
- workerArguments.push(GetFromPersistent("repo"));
2885
- workerArguments.push(GetFromPersistent("old_tree"));
2886
- workerArguments.push(GetFromPersistent("opts"));
2887
2905
  bool callbackFired = false;
2888
- while(!workerArguments.empty()) {
2889
- v8::Local<v8::Value> node = workerArguments.front();
2890
- workerArguments.pop();
2891
-
2892
- if (
2893
- !node->IsObject()
2894
- || node->IsArray()
2895
- || node->IsBooleanObject()
2896
- || node->IsDate()
2897
- || node->IsFunction()
2898
- || node->IsNumberObject()
2899
- || node->IsRegExp()
2900
- || node->IsStringObject()
2901
- ) {
2902
- continue;
2903
- }
2904
-
2905
- v8::Local<v8::Object> nodeObj = Nan::To<v8::Object>(node).ToLocalChecked();
2906
- v8::Local<v8::Value> checkValue = GetPrivate(nodeObj, Nan::New("NodeGitPromiseError").ToLocalChecked());
2907
-
2908
- if (!checkValue.IsEmpty() && !checkValue->IsNull() && !checkValue->IsUndefined()) {
2906
+ if (!callbackErrorHandle.IsEmpty()) {
2907
+ v8::Local<v8::Value> maybeError = Nan::New(callbackErrorHandle);
2908
+ if (!maybeError->IsNull() && !maybeError->IsUndefined()) {
2909
2909
  v8::Local<v8::Value> argv[1] = {
2910
- Nan::To<v8::Object>(checkValue).ToLocalChecked()
2910
+ maybeError
2911
2911
  };
2912
2912
  callback->Call(1, argv, async_resource);
2913
2913
  callbackFired = true;
2914
- break;
2915
- }
2916
-
2917
- v8::Local<v8::Array> properties = Nan::GetPropertyNames(nodeObj).ToLocalChecked();
2918
- for (unsigned int propIndex = 0; propIndex < properties->Length(); ++propIndex) {
2919
- v8::Local<v8::String> propName = Nan::To<v8::String>(Nan::Get(properties, propIndex).ToLocalChecked()).ToLocalChecked();
2920
- v8::Local<v8::Value> nodeToQueue = Nan::Get(nodeObj, propName).ToLocalChecked();
2921
- if (!nodeToQueue->IsUndefined()) {
2922
- workerArguments.push(nodeToQueue);
2923
- }
2924
2914
  }
2925
2915
  }
2926
2916
 
@@ -2937,6 +2927,7 @@ void GitDiff::TreeToWorkdirWithIndexWorker::HandleOKCallback() {
2937
2927
  callback->Call(0, NULL, async_resource);
2938
2928
  }
2939
2929
 
2930
+ git_diff_free(baton->diff);
2940
2931
  }
2941
2932
 
2942
2933
 
@@ -2954,7 +2945,7 @@ NAN_METHOD(GitDiff::GetPerfdata) {
2954
2945
  git_error_clear();
2955
2946
 
2956
2947
  { // lock master scope start
2957
- LockMaster lockMaster(
2948
+ nodegit::LockMaster lockMaster(
2958
2949
  /*asyncAction: */false
2959
2950
  ,
2960
2951
  Nan::ObjectWrap::Unwrap<GitDiff>(info.This())->GetValue()
@@ -2975,19 +2966,19 @@ NAN_METHOD(GitDiff::GetPerfdata) {
2975
2966
  }
2976
2967
  } // lock master scope end
2977
2968
 
2978
- v8::Local<v8::Value> to;
2969
+ v8::Local<v8::Value> v8ConversionSlot;
2979
2970
  // start convert_to_v8 block
2980
2971
  if (out != NULL) {
2981
- to = GitDiffPerfdata::New(
2972
+ v8ConversionSlot = GitDiffPerfdata::New(
2982
2973
  out,
2983
2974
  true
2984
2975
  );
2985
2976
  }
2986
2977
  else {
2987
- to = Nan::Null();
2978
+ v8ConversionSlot = Nan::Null();
2988
2979
  }
2989
2980
  // end convert_to_v8 block
2990
- return info.GetReturnValue().Set(scope.Escape(to));
2981
+ return info.GetReturnValue().Set(scope.Escape(v8ConversionSlot));
2991
2982
  }
2992
2983
  }
2993
2984
  // force base class template instantiation, to make sure we get all the