| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|/ /
| |
| | |
Closes #2029
|
|\ \
| | |
| | | |
submodule branch option + little VS2013 fix
|
| | | |
|
| |/ |
|
|\ \
| | |
| | | |
Use our strnlen on MacOS for backward compat
|
|/ /
| |
| |
| |
| |
| | |
Apparently MacOS didn't have strnlen on 10.6 and earlier. To
avoid having linking problems on older versions, we'll just use
our internal version.
|
|/ |
|
|\
| |
| | |
Accept 'submodule.*.fetchRecurseSubmodules' config 'on-demand' value
|
| | |
|
| | |
|
| | |
|
|\ \
| |/
|/| |
Updated fetch.c test to pass.
|
|/
|
| |
I am not sure why there was 6 in the first place.
|
|\
| |
| | |
docs: Remove non existing wrapper from the readme
|
|/
|
| |
libgit2net stopped to exist, all hail libgit2sharp
|
|\
| |
| | |
Reference operations with log
|
| |
| |
| |
| |
| |
| | |
The frontend used to look at the file directly, but that's obviously not
the right thing to do. Expose it on the backend and use that function
instead.
|
| |
| |
| |
| |
| |
| | |
Sometimes (e.g. stash) we want to make sure that a log will be written,
even if it's not in one of the standard locations. Let's make that
easier.
|
| |
| |
| |
| |
| |
| | |
git-core only writes to the reflogs of HEAD, refs/heads/ and,
refs/notes/ or if there is already a reflog in place. Adjust our code to
follow these semantics.
|
| |
| |
| |
| |
| |
| | |
This was a convenience method for the refs front-end to do the reflog
writing. This is now done in the backend and it has no more reason for
being.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Whenever a reference is created or updated, we need to write to the
reflog regardless of whether the user gave us a message, so we shouldn't
leave that to the ref frontend, but integrate it into the backend.
This also eliminates the race between ref update and writing to the
reflog, as we protect the reflog with the ref lock.
As an additional benefit, this reflog append on the backend happens by
appending to the file instead of parsing and rewriting it.
|
| |
| |
| |
| | |
This is as yet unused.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Overwrite ignored files on checkout
|
| | | |
|
|/ / |
|
|\ \
| | |
| | | |
Clean up some error handling and change callback error behavior
|
| | |
| | |
| | |
| | |
| | |
| | | |
The size_t is 32-bit already, so it overflows before going into the
function. The `-1` test should handle this gracefully in both cases
anyway.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Ok, scrap the previous commit. This is the right overflow check that
takes care of 64 bit overflow **and** 32-bit overflow, which needs to be
considered because the pool malloc can only allocate 32-bit elements in
one go.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Note that `git_pool_strdup` cannot really return any error codes,
because the pool doesn't set errors on OOM.
The only place where `giterr_set_oom` is called is in
`git_pool_strndup`, in a conditional check that is always optimized
away. `n + 1` cannot be zero if `n` is unsigned because the compiler
doesn't take wraparound into account.
This check has been removed altogether because `size_t` is not
particularly going to overflow.
|
| | |
| | |
| | |
| | |
| | |
| | | |
This wasn't being tested and since it has a callback, I fixed it
even though the return value of this callback is not treated like
any of the other callbacks in the API.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This renames git_vector_free_all to the better git_vector_free_deep
and also contains a couple of memory leak fixes based on valgrind
checks. The fixes are specifically: failure to free global dir
path variables when not compiled with threading on and failure to
free filters from the filter registry that had not be initialized
fully.
|
| | |
| | |
| | |
| | |
| | | |
This covers diff print, push, and ref foreach. This also has a
fix for a small memory leak in the push tests.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This adds tests that try canceling an indexer operation from
within the progress callback.
After writing the tests, I wanted to run this under valgrind and
had a number of errors in that situation because mmap wasn't
working. I added a CMake option to force emulation of mmap and
consolidated the Amiga-specific code into that new place (so we
don't actually need separate Amiga code now, just have to turn on
-DNO_MMAP).
Additionally, I made the indexer code propagate error codes more
reliably than it used to.
|
| | |
| | |
| | |
| | |
| | |
| | | |
This time actually checking return values in diff notify tests and
actually testing callbacks for the index all-all/update-all/etc
functions.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Clone callbacks can return non-zero values to cancel the clone.
This adds some tests to verify that this actually works and updates
the documentation to be clearer that this can happen and that the
return value will be propagated back by the clone function.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The checkout notify callback behavior on non-zero return values
was not being tested. This adds tests, fixes a bug with positive
values, and clarifies the documentation to make it clear that the
checkout can be canceled via this mechanism.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The callback to supply data chunks could return a negative value
to stop creation of the blob, but we were neither using GIT_EUSER
nor propagating the return value. This makes things use the new
behavior of returning the negative value back to the user.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Okay, I've decided I like the readability of this style much
better so I used it everywhere.
|
| | |
| | |
| | |
| | | |
I find this easier to read...
|
| | | |
|