- 20 Mar, 2017 2 commits
-
-
The `map_free` functions were not implemented as functions but instead as macros which also set the map to NULL. While this is most certainly sensible in most cases, we should prefer the more obvious behavior, namingly leaving the map pointer intact. Furthermore, this macro has been refactored incorrectly during the map-refactorings: the two statements are not actually grouped together by a `do { ... } while (0)` block, as it is required for macros to match the behavior of functions more closely. This has led to at least one subtle nesting error in `pack-objects.c`. The following code block ``` if (pb->object_ix) git_oidmap_free(pb->object_ix); ``` would be expanded to ``` if (pb->object_ix) git_oidmap__free(pb->object_ix); pb->object_ix = NULL; ``` which is not what one woudl expect. While it is not a bug here as it would simply become a no-op, the wrong implementation could lead to bugs in other occasions. Fix this by simply removing the macro altogether and replacing it with real function calls. This leaves the burden of setting the pointer to NULL afterwards to the caller, but this is actually expected and behaves like other `free` functions.
Patrick Steinhardt committed -
We currently call `git_strmap_free` on `checkout_data.mkdir_map` in the `checkout_data_clear` function. The only thing protecting us from a double-free is that the `git_strmap_free` function is in fact not a function, but a macro that also sets the map to NULL. Remove the second call to `git_strmap_free` and explicitly set the map member to NULL.
Patrick Steinhardt committed
-
- 15 Mar, 2017 3 commits
-
-
submodule: catch when submodule is not staged on update
Edward Thomson committed -
Patrick Steinhardt committed
-
Gumenik Alexandr committed
-
- 14 Mar, 2017 2 commits
-
-
winhttp: disambiguate error messages when sending requests
Patrick Steinhardt committed -
When calling `git_submodule_update` on a submodule, we have to retrieve the ID of the submodule entry in the index. If the function is called on a submodule which is only partly initialized, the submodule entry may not be added to the index yet. This leads to an assert when trying to look up the blob later on. Fix the issue by checking if the index actually holds the submodule's ID and erroring out if it does not.
Patrick Steinhardt committed
-
- 11 Mar, 2017 2 commits
-
-
Skip uninteresting commits in revwalk timesort iterator
Carlos Martín Nieto committed -
git_futils_readbuffer: don't compute sha-1
Carlos Martín Nieto committed
-
- 09 Mar, 2017 3 commits
-
-
rebase: ignore untracked files in submodules
Edward Thomson committed -
Fixes #4099
Adam Niedzielski committed -
Don't compute the sha-1 in `git_futils_readbuffer_updated` unless the checksum was requested. This means that `git_futils_readbuffer` will not calculate the checksum unnecessarily.
Edward Thomson committed
-
- 06 Mar, 2017 3 commits
-
-
Support namespaced references again
Edward Thomson committed -
Edward Thomson committed
-
These simple tests only ensure that we enforce the existence of a namespace; these mirror the rugged tests, they are not exhaustive.
Edward Thomson committed
-
- 03 Mar, 2017 8 commits
-
-
An untracked file in a submodule should not prevent a rebase from starting. Even if the submodule's SHA is changed, and that file would conflict with a new tracked file, it's still OK to start the rebase and discover the conflict later. Signed-off-by: David Turner <dturner@twosigma.com>
David Turner committed -
git_commit_create: freshen tree objects in commit
Carlos Martín Nieto committed -
Freshen the tree object that a commit points to during commit time.
Edward Thomson committed -
Introduce (optional) SHA1 collision attack detection
Carlos Martín Nieto committed -
We never set `SHA1_TYPE` to `builtin`. Don't bother testing for it.
Edward Thomson committed -
Edward Thomson committed
-
Include the SHA1 collision attack detection library from https://github.com/cr-marcstevens/sha1collisiondetection
Edward Thomson committed -
Edward Thomson committed
-
- 01 Mar, 2017 6 commits
-
-
cmake: only enable supported compiler warning flags
Patrick Steinhardt committed -
We currently unconditionally enable the "-Wall" and "-Wextra" flags. Some platforms rely on compilers which do not support these flags, though. One of these platforms is Haiku, which does not support "-Wextra" due to being stuck on GCC version 2. Fix builds on such platforms by adding these flags only if supported by the compiler.
Patrick Steinhardt committed -
tests: refs::create: fix memory leak
Patrick Steinhardt committed -
Patrick Steinhardt committed
-
Patrick Steinhardt committed
-
Fix: make reflog include "(merge)" for merge commits
Patrick Steinhardt committed
-
- 28 Feb, 2017 1 commit
-
-
This test ensures that the string '(merge)' is included in the reflog when a merge commit is made.
Richard Ipsum committed
-
- 27 Feb, 2017 1 commit
-
-
This fixes issue #4094
Richard Ipsum committed
-
- 26 Feb, 2017 4 commits
-
-
tests: Add create__symbolic_with_arbitrary_content
Edward Thomson committed -
Fix minor typos in CONVENTIONS.md
Edward Thomson committed -
Fix inet_pton tests triggering an assert in Haiku
Edward Thomson committed -
Patrick Blesi committed
-
- 25 Feb, 2017 4 commits
-
-
Haiku will assert in a nightly build if the "dst" input to inet_pton() is NULL.
Kevin Wojniak committed -
Use C style comments as per style guide, and fix mismatching indentation.
Richard Ipsum committed -
This test ensures that it's possible to create a symbolic ref that has arbitrary data as its target. It also ensures it's possible to obtain the target of that symbolic reference from the git_reference object.
Richard Ipsum committed -
appveyor: don't rewrite the system mingw
Edward Thomson committed
-
- 24 Feb, 2017 1 commit
-
-
Download mingw-w64 into our build directory and execute it there, don't try to overwrite the system's mingw.
Edward Thomson committed
-