- 15 May, 2014 1 commit
-
-
Philip Kelley committed
-
- 14 May, 2014 3 commits
-
-
Initialize local variable
Vicent Marti committed -
Increase config snapshot usage
Vicent Marti committed -
Add R bindings to the README
Vicent Marti committed
-
- 13 May, 2014 11 commits
-
-
And decrease extra reload checks of config data.
Russell Belfer committed -
Russell Belfer committed
-
Stefan Widgren committed
-
Linquize committed
-
Improve checks for ignore containment
Vicent Marti committed -
Make pack object lookup use loops
Vicent Marti committed -
Minor fix for previously merged netops code.
Vicent Marti committed -
The code doesn't use SSL and a test requires it.
Albert Meltzer committed -
The base object is a good cache candidate, so we shouldn't forget to add it to the cache.
Carlos Martín Nieto committed -
This avoid allocating the array on the heap for relatively small chains. The expected performance increase is sadly not really noticeable.
Carlos Martín Nieto committed -
Instead of going through a special entry in the chain, let's pass it as an output parameter.
Carlos Martín Nieto committed
-
- 12 May, 2014 6 commits
-
-
Pass unconverted Unicode path data when iconv doesn't like it
Russell Belfer committed -
Be more careful with user-supplied buffers
Russell Belfer committed -
Russell Belfer committed
-
Russell Belfer committed
-
Some improvements to the cert checking
Russell Belfer committed -
Configuration snapshotting
Russell Belfer committed
-
- 09 May, 2014 8 commits
-
-
The switch makes the loop somewhat unwieldy. Let's assume it's fine and perform the check when we're accessing the data. This makes our code look a lot more like git's.
Carlos Martín Nieto committed -
Dependency chains are often large and require a few reallocations. Allocate a 64-element chain before doing anything else to avoid allocations during the loop. This value comes from the stack-allocated one git uses. We still allocate this on the heap, but it does help performance a little bit.
Carlos Martín Nieto committed -
Carlos Martín Nieto committed
-
Bring back the use of the delta base cache for unpacking objects. When generating the delta chain, we stop when we find a delta base in the pack's cache and use that as the starting point.
Carlos Martín Nieto committed -
We currently make use of recursive function calls to unpack an object, resolving the deltas as we come back down the chain. This means that we have unbounded stack growth as we look up objects in a pack. This is now done in two steps: first we figure out what the dependency chain is by looking up the delta bases until we reach a non-delta object, pushing the information we need onto a stack and then we pop from that stack and apply the deltas until there are no more left. This version of the code does not make use of the delta base cache so it is slower than what's in the mainline. A later commit will reintroduce it.
Carlos Martín Nieto committed -
Repeating this error message makes it harder to find out where we actually are finding the error, and they don't really describe what we're trying to do.
Carlos Martín Nieto committed -
Carlos Martín Nieto committed
-
Add filter options and ALLOW_UNSAFE
Vicent Marti committed
-
- 08 May, 2014 11 commits
-
-
It seems that with the various recent changes to reference updating and reflog writing, that the thread safety of refdb updates has been reduced (either that or it was never thread safe and the window for error has increased). Either way, this test is now sometimes segfaulting which is no good, so let's disable the test for now. We don't really make any public promises about thread safety for this type of operation, so I think this is acceptable, at least in the short term.
Russell Belfer committed -
Only on a filesystem that is composed/decomposed insensitive, should be testing that a branch can be looked up by the opposite form and still work correctly.
Russell Belfer committed -
One of the test helpers provides a quick way for looking up a boolean key. But if the key way missing completely, the check would actually raise an error. Given the way we use this helper, if the key is missing, this should just return false, I think.
Russell Belfer committed -
indexer: avoid memory moves
Vicent Marti committed -
When using Iconv to convert unicode data and iconv doesn't like the source data (because it thinks that it's not actual UTF-8), instead of stopping the operation, just use the unconverted data. This will generally do the right thing on the filesystem, since that is the source of the non-UTF-8 path data anyhow. This adds some tests for creating and looking up branches with messy Unicode names. Also, this takes the helper function that was previously internal to `git_repository_init` and makes it into `git_path_does_fs_decompose_unicode` which is a useful in tests to understand what the expected results should be.
Russell Belfer committed -
Our vector does a move of the rest of the array when we remove an item. Doing this repeatedly can be expensive, and we do this a lot in the indexer. Instead, set the value to NULL and skip those entries. perf reported around 30% of `index-pack` time was going into memmove. With this change, that goes away and we spent most of the time hashing and inflating data.
Carlos Martín Nieto committed -
iconv debugging aids
Russell Belfer committed -
This is quite close to running "git for-each-ref" except: 1. It does not take any formatting or selection options at all. 2. The output is not sorted. I wrote it to look at debugging some issues with ref iteration, but there's no reason it can't live on as an example command.
Jeff King committed -
The cmake module we provide is in the file FindIconv.cmake, so we must match the case correctly. It happens to work in practice because we only turn on ICONV on Darwin, and people generally have case-insensitive filesystems there. Note that we only need to update the package name here. The package itself still sets the all-uppercase ICONV_FOUND flag, so we continue to use uppercase in the rest of cmake.
Jeff King committed -
Russell Belfer committed
-
This adds in missing calls to `git_buf_sanitize` and fixes a number of places where `git_buf` APIs could inadvertently write NUL terminator bytes into invalid buffers. This also changes the behavior of `git_buf_sanitize` to NUL terminate a buffer if it can and of `git_buf_shorten` to do nothing if it can. Adds tests of filtering code with zeroed (i.e. unsanitized) buffer which was previously triggering a segfault.
Russell Belfer committed
-