Log

Author Commit Date CI Message
Russell Belfer acdc7cff 2014-03-27T15:29:17 Fix memory leak of submodule branch name
Russell Belfer add8db06 2014-03-27T15:28:29 Fix use-after-free in submodule reload If the first call to release a no-longer-existent submodule freed the object, the check if a second is needed would dereference the data that was just freed.
Vicent Marti 041fad4a 2014-03-27T08:32:46 Merge pull request #2210 from libgit2/rb/submodule-api-with-no-submodules Fix segfault if gitmodules is invalid
Russell Belfer 380f864a 2014-03-26T16:06:21 Fix error when submodule path and name differ When a submodule was inserted with a different path and name, the return value from khash greater than zero was allowed to propagate back out to the caller when it should really be zeroed. This led to a possible crash when reloading submodules if that was the first time that submodule data was loaded.
Russell Belfer 22df47cb 2014-03-26T14:38:26 Fix segfault if gitmodules is invalid The reload_all call could end up dereferencing a NULL pointer if there was an error while attempting to load the submodules config data (i.e. invalid content in the gitmodules file). This fixes it.
Vicent Marti f4afcaa0 2014-03-26T19:37:01 Merge pull request #2209 from ethomson/cleanup Cleanup some warnings and mem leaks
Edward Thomson 9cb99e8b 2014-03-26T12:43:41 Free temporary merge index
Edward Thomson 2b848e47 2014-03-26T12:33:37 Decorate unused params as unused in revwalk::hidecb tests
Vicent Marti dc7efa1a 2014-03-26T18:29:34 Merge pull request #2204 from libgit2/rb/submodule-reference-counting Make submodules externally refcounted
Vicent Marti 77b699e0 2014-03-26T10:29:11 Merge pull request #2205 from libgit2/rb/submodule-untracked-vs-ignored Update behavior for untracked contained repositories
Vicent Marti fcbbe1bd 2014-03-26T10:27:42 Merge pull request #2166 from ethomson/giterr_restore clone: don't overwrite original error message
Edward Thomson 1df8ad01 2014-03-06T16:00:52 clone: don't overwrite original error message
Edward Thomson f2f2d97f 2014-03-24T17:48:54 Test for giterr_capture
Russell Belfer 591e8295 2014-03-25T16:52:01 Fix submodule leaks and invalid references This cleans up some places I missed that could hold onto submodule references and cleans up the way in which the repository cache is both reloaded and released so that existing submodule references aren't destroyed inappropriately.
Russell Belfer d3bc95fd 2014-03-25T12:37:05 Update behavior for untracked sub-repos When a directory containing a .git directory (or even just a plain gitlink) was found, libgit2 was going out of its way to treat it specially. This seemed like it was necessary because the diff code was not originally emulating Git's behavior for untracked directories correctly (i.e. scanning for ignored vs untracked items inside). Now that libgit2 diff mimics Git's untracked directory behavior, the special handling for contained Git repos is actually incorrect and this commit rips it out.
Edward Thomson 451aaf86 2014-03-25T10:33:18 Merge pull request #2181 from anuraggup/hide_cb Callback function to hide commit and its parents in revision walker
Russell Belfer a15c7802 2014-03-25T09:14:48 Make submodules externally refcounted `git_submodule` objects were already refcounted internally in case the submodule name was different from the path at which it was stored. This makes that refcounting externally used as well, so `git_submodule_lookup` and `git_submodule_add_setup` return an object that requires a `git_submodule_free` when done.
Anurag Gupta 34ffe223 2014-03-24T11:02:02 Modified test for revwalk_hidecb
Anurag Gupta 892b7c9f 2014-03-11T12:13:29 Correcting format of comments in header file
Anurag Gupta 169fb81d 2014-03-11T11:56:26 Undoing local change done for building on x64
Anurag Gupta 7ca1584b 2014-03-11T11:49:19 Conforming to libgit2 coding style.
Anurag Gupta 46e4d82d 2014-03-10T16:21:56 Remove unused push_cb_data
Anurag Gupta 3a666071 2014-03-10T15:38:01 Unit Tests for hide_cb in revwalk
Anurag Gupta 892aa808 2014-03-10T12:00:33 Callback to hide commits in revision walker.
Russell Belfer f210cb5b 2014-03-24T10:58:10 Merge pull request #2201 from ethomson/gitbuf_test_fix env test needs to deref git_buf's ptr
Edward Thomson fdc54eb2 2014-03-24T10:56:11 env test needs to deref git_buf's ptr
Vicent Marti 85a41fc4 2014-03-24T18:09:13 Merge pull request #2183 from ethomson/merge_refactor Refactor the `git_merge` API
Vicent Marti f57cc638 2014-03-24T13:52:02 Merge pull request #2200 from libgit2/cmn/opts-buf settings: use git_buf for returning strings
Carlos Martín Nieto 6057c4a0 2014-03-23T15:48:13 opts: bits are not bytes The default cache size is 256 megabytes, not megabits as claimed in the docs.
Carlos Martín Nieto 42dee8ec 2014-03-23T13:34:33 settings: use git_buf for returning strings This survived the last round of culling, as the signature is only in the comments.
Vicent Marti 0deb534d 2014-03-21T12:25:53 Merge pull request #2197 from linquize/assert-wrong Fix wrong assertion
Linquize 31a14982 2014-03-21T17:36:34 Fix wrong assertion Fixes issue #2196
Vicent Marti 36a80fda 2014-03-20T21:06:23 Merge pull request #2195 from libgit2/cmn/revwalk-no-hide revwalk: don't try to find merge bases when there can be none
Carlos Martín Nieto 704b55cc 2014-03-20T20:24:11 revwalk: don't try to find merge bases when there can be none As a way to speed up the cases where we need to hide some commits, we find out what the merge bases are so we know to stop marking commits as uninteresting and avoid walking down a potentially very large amount of commits which we will never see. There are however two oversights in current code. The merge-base finding algorithm fails to recognize that if it is only given one commit, there can be no merge base. It instead walks down the whole ancestor chain needlessly. Make it return an empty list immediately in this situation. The revwalk does not know whether the user has asked to hide any commits at all. In situation where the user pushes multiple commits but doesn't hide any, the above fix wouldn't do the trick. Keep track of whether the user wants to hide any commits and only run the merge-base finding algorithm when it's needed.
Vicent Marti 7d633572 2014-03-20T20:08:01 Merge pull request #2194 from libgit2/cmn/reflog-bare reflog: follow core.logallrefupdates
Carlos Martín Nieto 1c351659 2014-03-20T09:55:47 reflog: remove some dead code
Carlos Martín Nieto 83504371 2014-03-19T22:27:23 reflog: follow core.logallrefupdates On bare by default, or when core.logallrefupdates is false, we must not write the reflog.
Edward Thomson 58c2b1c4 2014-03-20T09:35:22 UNBORN implies FAST_FORWARD
Edward Thomson ac584fcf 2014-03-18T16:04:51 Introduce GIT_MERGE_ANALYSIS_UNBORN
Edward Thomson 97f3462a 2014-03-18T13:14:09 git_merge_status -> git_merge_analysis
Edward Thomson d9fdee6e 2014-03-12T09:43:53 Remove `git_merge_result` as it's now unnecessary
Edward Thomson 5aa2ac6d 2014-03-11T22:47:39 Update git_merge_tree_opts to git_merge_options
Edward Thomson 02105a27 2014-03-11T18:40:38 Change signature of `git_merge` to take merge and checkout opts
Edward Thomson 1c0b6a38 2014-03-11T17:58:10 Remove fastforward / uptodate from `git_merge`
Edward Thomson ccb30827 2014-03-11T17:19:35 Add `git_merge_status` to provide info about an upcoming merge
Edward Thomson 05d47768 2014-03-10T22:30:41 Introduce git_merge_file for consumers
Vicent Marti f29e4899 2014-03-19T19:51:57 Merge pull request #2193 from libgit2/cmn/reflog-HEAD Reflog all the way
Carlos Martín Nieto 99797c96 2014-03-19T18:14:35 reflog: handle symref chains Given HEAD -> master -> foo, when updating foo's reflog we should also update HEAD's, as it's considered the current branch.
Carlos Martín Nieto 6aaae94a 2014-03-19T16:30:37 reflog: handle the birth of a branch The reflog append function was overzealous in its checking. When passed an old and new ids, it should not do any checking, but just serialize the data to a reflog entry.
Carlos Martín Nieto afc57eb4 2014-03-19T06:59:09 reflog: simplify the append logic Remove some duplicated logic.
Carlos Martín Nieto 1afe1400 2014-03-18T22:16:58 refdb: don't update when there's no need If the caller wants to update a ref to point to the same target as it currently has, we should return early and avoid writing to the reflog.
Carlos Martín Nieto bac95e6e 2014-03-18T19:41:03 reflog: more comprehensive HEAD tests The existing ones lack checking zeroed ids when switching back from an unborn branch as well as what happens when detaching. The reflog appending function mistakenly wrote zeros when dealing with a detached HEAD. This explicitly checks for those situations and fixes them.
Vicent Marti 5dd7d243 2014-03-18T16:23:51 Merge pull request #2189 from Aimeast/octopus Implement git_merge_base_octopus
Aimeast 0aee025b 2014-03-18T22:31:14 Implement git_merge_base_octopus
Vicent Marti dd4c6962 2014-03-18T15:25:43 Merge pull request #2192 from phkelley/development Seamless support for NTLM/Kerberos auth on Windows
Philip Kelley 1392418e 2014-03-18T09:04:33 Seamless support for NTLM/Kerberos auth on Windows
Vicent Marti a7af1f7d 2014-03-18T14:46:42 Merge pull request #2190 from libgit2/cmn/current-branch-reflog refs: append to the HEAD reflog when updating the current branch
Russell Belfer dd5e74e5 2014-03-17T15:57:25 Merge pull request #2191 from libgit2/cmn/projects Add a few projects to the list
Carlos Martín Nieto 5c8096c5 2014-03-17T19:44:07 Add a few projects to the list
Carlos Martín Nieto 4b7e1b9e 2014-01-15T13:19:48 refs: append to the HEAD reflog when updating the current branch When we update the current branch, we must also append to HEAD's reflog to keep them in sync. This is a bit of a hack, but as git.git says, it covers 100% of default cases.
Carlos Martín Nieto cb562c3f 2014-03-17T17:36:51 repo: remove test which deletes HEAD This is not something anybody would ever do; removing HEAD makes the .git/ directory no longer be a repository, so we wouldn't be expected to handle such a situation.
Carlos Martín Nieto 853b1407 2014-03-17T16:10:33 branch: constness fixes
Carlos Martín Nieto 2b40390f 2014-03-13T15:54:53 refs: fix copy-paste doc error
Edward Thomson e59e712f 2014-03-12T12:05:35 Merge pull request #2184 from libgit2/rb/fix-revwalk-order-regression Fix pqueue sort boundary condition bug
Russell Belfer 5302a885 2014-03-12T11:21:55 Fix pqueue sort boundary condition bug If the pqueue comparison fn returned just 0 or 1 (think "a<b") then the sort order of returned items could be wrong because there was a "< 0" that really needed to be "<= 0". Yikes!!!
Carlos Martín Nieto 9af14886 2014-03-10T18:20:47 MSVC is silly
Vicent Marti fc78488b 2014-03-10T18:16:56 Merge pull request #2175 from Yogu/submodule-resolve-url Add git_submodule_resolve_url()
Jan Melcher 52fba18f 2014-03-10T18:16:10 Add git_submodule_resolve_url()
Paul Betts 4a8692f6 2014-03-09T21:07:18 Merge pull request #2177 from shiftkey/typo-fix corrected typo in error message
Brendan Forster 0782c89e 2014-03-10T14:40:07 corrected typo in error message
Vicent Marti 6de018bb 2014-03-07T20:00:20 Merge pull request #2170 from ethomson/clar Update clar to e1990d6
Edward Thomson dd954a37 2014-03-07T10:53:00 Update clar to e1990d6
Vicent Marti 041cd4a2 2014-03-07T19:02:58 Merge pull request #2028 from libgit2/options-names Rename options structures
Russell Belfer 5a6de908 2014-03-07T09:13:43 Merge pull request #2153 from mekishizufu/tag_example Add a tag example
Vicent Marti 628edd6b 2014-03-07T16:26:58 Merge pull request #2167 from mekishizufu/memory_access_fixes Fun with memory access
Vicent Marti 0d95f6ec 2014-03-07T16:26:51 Merge pull request #2169 from libgit2/valgrind Plug leaks
Carlos Martín Nieto ae32c54e 2014-03-05T20:28:49 Plug a few leaks in the tests
Carlos Martín Nieto a07b1698 2014-03-07T15:40:53 branch: fix leak when checking against HEAD We look up a reference in order to figure out if it's the current branch, which we need to free once we're done with the check. As a bonus, only perform the check when we're passed the force flag, as it's a useless check otherwise.
Carlos Martín Nieto 7c1ee212 2014-03-07T15:17:08 commit: simplify and correct refcounting in nth_gen_ancestor We can make use of git_object_dup to use refcounting instead of pointer comparison to make sure we don't free the caller's object. This also lets us simplify the case for '~0' which is now just an assignment instead of looking up the object we have at hand.
Carlos Martín Nieto 5187b609 2014-03-07T14:58:43 local transport: catch double-opens Combinations of connect + fetch can call local_open multiple times. Detect this and skip the initialization stage.
Jiri Pospisil 79aa0302 2014-03-06T22:23:57 blame: Fix compare function's data types Previously the hunk_byfinalline_search_cmp function was called with different data types (size_t and uint32_t) for the key argument but expected only the former resulting in an invalid memory access when passed the latter on a 64 bit machine. The following patch makes sure that the function is called and works with the same type (size_t).
Jiri Pospisil 00258cc0 2014-03-06T22:10:17 git_oid_fromstrn: Simplify the implementation and fix memory access issues
Vicent Marti c81e4adf 2014-03-07T14:00:59 Merge pull request #2168 from ethomson/clar Update clar to a0b00f0
Edward Thomson 806571f3 2014-03-07T00:28:18 Update clar to a0b00f0
Ben Straub aa17c3c6 2014-01-03T17:42:09 git_revert_opts -> git_revert_options
Ben Straub 6affd71f 2014-01-03T17:38:34 git_checkout_opts -> git_checkout_options
Carlos Martín Nieto 8e524720 2014-03-06T16:40:34 tests: MSVC compat MSVC doesn't like declaring variables in the middle of a block, so make sure we only declare variables at the beginning of a block.
Vicent Marti 4a759bfb 2014-03-06T16:08:36 Merge pull request #2165 from libgit2/revert-1997 Revert pull request #1997
Vicent Marti 2ab6d2cd 2014-03-06T16:08:17 Revert pull request #1997
Vicent Marti 4d116c34 2014-03-06T16:08:12 Merge pull request #1997 from mgbowen/merge-options-init-fix Fix GIT_MERGE_OPTS_INIT on MSVC.
Vicent Marti efc822ef 2014-03-06T13:14:15 Merge pull request #2014 from mgbowen/cpp-options-init Function-based options initializers
Ben Straub a5139485 2014-03-05T19:50:23 Merge pull request #2162 from sunheehnus/dev examples/diff:Add the shortstat flag to examples/diff.c
Sun He 6246de93 2014-03-06T11:16:36 Merge completed: resolve the conflict with the upstream
Matthew Bowen b9f81997 2014-03-05T21:49:23 Added function-based initializers for every options struct. The basic structure of each function is courtesy of arrbee.
Vicent Marti a064dc2d 2014-03-06T00:47:05 Merge pull request #2159 from libgit2/rb/odb-exists-prefix Add ODB API to check for existence by prefix and object id shortener
Russell Belfer 26875825 2014-03-05T13:06:22 Check short OID len in odb, not in backends
Vicent Marti a62ad3c3 2014-03-05T21:07:20 Merge pull request #2164 from libgit2/cmn/refs-delete-iteration refdb: catch a directory disappearing
Vicent Marti 967d3f2e 2014-03-05T21:06:59 Merge pull request #2163 from ethomson/nobackend_odb_write ODB writing fails gracefully when unsupported
Carlos Martín Nieto a213a7bf 2014-03-05T20:32:53 refdb: catch a directory disappearing If a directory disappears between the time we look up the entries of its parent and the time when we go to look at it, we should ignore the error and move forward. This fixes #2046.
Edward Thomson 7bd2f401 2014-03-05T11:35:47 ODB writing fails gracefully when unsupported If no ODB backends support writing, we should fail gracefully.