- 31 Mar, 2016 2 commits
-
-
The xdl_prepare_env() function may initialise an xdlclassifier_t data structure via xdl_init_classifier(), which allocates memory to several fields, for example 'rchash', 'rcrecs' and 'ncha'. If this function later exits due to the failure of xdl_optimize_ctxs(), then this xdlclassifier_t structure, and the memory allocated to it, is not cleaned up. In order to fix the memory leak, insert a call to xdl_free_classifier() before returning. This patch was originally written by Ramsay Jones (see commit 87f16258367a3b9a62663b11f898a4a6f3c19d31 in git.git).
Patrick Steinhardt committed -
Commit 307ab20b3 ("xdiff: PATIENCE/HISTOGRAM are not independent option bits", 19-02-2012) introduced the XDF_DIFF_ALG() macro to access the flag bits used to represent the diff algorithm requested. In addition, code which had used explicit manipulation of the flag bits was changed to use the macros. However, one example of direct manipulation remains. Update this code to use the XDF_DIFF_ALG() macro. This patch was originally written by Ramsay Jones (see commit 5cd6978a9cfef58de061a9525f3678ade479564d in git.git).
Patrick Steinhardt committed
-
- 29 Mar, 2016 1 commit
-
-
config: don't write duplicate section
Carlos Martín Nieto committed
-
- 28 Mar, 2016 5 commits
-
-
config: don't special-case multivars that don't exist yet
Edward Thomson committed -
Edward Thomson committed
-
If we hit the EOF while trying to write a new value, it may be that we're already in the section that we were looking for. If so, do not write a (duplicate) section header, just write the value.
Edward Thomson committed -
We should notice that we are in the correct section to add. This is a cosmetic bug, since replacing any of these settings does work.
Carlos Martín Nieto committed -
CMakeLists: Further improve the error messages regarding CMAKE_SIZEOF_VOID_P
Edward Thomson committed
-
- 26 Mar, 2016 1 commit
-
-
Some FANTASTIC iterator refactoring
Carlos Martín Nieto committed
-
- 24 Mar, 2016 15 commits
-
-
Marc Strapetz committed
-
Marc Strapetz committed
-
Marc Strapetz committed
-
Marc Strapetz committed
-
Marc Strapetz committed
-
Remove some unused functions, refactor some ugliness.
Edward Thomson committed -
(It's slow!)
Edward Thomson committed -
Edward Thomson committed
-
Since the three iterators implement `advance_over` differently, mandate it and implement each.
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Iterator tests were split over repo::iterator and diff::iterator, with duplication between the two. Move them to iterator::index, iterator::tree, and iterator::workdir.
Edward Thomson committed -
Buffer sideband packet data
Carlos Martín Nieto committed -
Sebastian Schuberth committed
-
- 23 Mar, 2016 16 commits
-
-
Jeff Hostetler committed
-
When a directory is removed out from underneath us, stop trying to manipulate it.
Edward Thomson committed -
Now that iterators do not return `GIT_ENOTFOUND` when advancing into an empty directory, we do not need a special `advance_into_or_over` function.
Edward Thomson committed -
Prior iterator implementations returned `GIT_ENOTFOUND` when trying to advance into empty directories. Ensure that we no longer do that and simply handle them gracefully.
Edward Thomson committed -
joshaber committed
-
tree_iterator was only working properly for a pathlist containing file paths. In case of directory paths, it didn't match children which contradicts GIT_DIFF_DISABLE_PATHSPEC_MATCH and is different from index_iterator and fs_iterator. As a consequence head-to-index status reporting for a specific directory did not work properly -- all files have been reported as added. Include additional tests.
Marc Strapetz committed -
Edward Thomson committed
-
`git_iterator_advance_over` is a gnarly bit of code with no actual tests.
Edward Thomson committed -
In the workdir iterator we do some tricky things to step down into directories to look for things that are in our pathlist. Make sure that we don't confuse between folders that we're definitely going to return everything in and folders that we're only stepping down into to keep looking for matches.
Edward Thomson committed -
Ensure that when specifying start/end paths, or pathlists, that we deal correctly with submodules.
Edward Thomson committed -
Expand the workdir tests to validate the paths in case sensitive and insensitive tests.
Edward Thomson committed -
Ensure that we have hit the end of iteration; previously we tested that we saw all the values that we expected to see. We did not then ensure that we were at the end of the iteration (and that there were subsequently values in the iteration that we did *not* expect.)
Edward Thomson committed -
Drop some of the layers of indirection between the workdir and the filesystem iterators. This makes the code a little bit easier to follow, and reduces the number of unnecessary allocations a bit as well. (Prior to this, when we filter entries, we would allocate them, filter them and then free them; now we do the filtering before allocation.) Also, rename `git_iterator_advance_over_with_status` to just `git_iterator_advance_over`. Mostly because it's a fucking long-ass function name otherwise.
Edward Thomson committed -
Edward Thomson committed
-
Do not abort iteration in the middle when encountering an unreadable directory. Instead, skip it, as if it didn't exist.
Edward Thomson committed -
Many code paths in checkout need the final, full on-disk path of the file they're writing. (No surprise). However, they all munge the `data->path` buffer themselves to get there. Provide a nice helper method for them. Plus, drop the use `git_iterator_current_workdir_path` which does the same thing but different. Checkout is the only caller of this silly function, which lets us remove it.
Edward Thomson committed
-