| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
We should replace it with whatever the user set, not start again.
|
|
|
|
|
| |
When given $PATH as part of a search path, we guess again instead of
substituting what the user already set.
|
|\
| |
| | |
refdb: disable concurrent compress in the threading tests on Windows
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is far from an ideal situation, but this causes issues on Windows which
make it harder to develop anything, as these tests hit issues which relate
specifically to the Windows filesystem like permission errors for files we
should be able to access. There is an issue likely related to the ordering of
the repack, but there's enough noise that it does not currently help us to run
this aspect of the test in CI.
|
|\ \
| |/
|/| |
Various fixes
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
| |
The function `cl_git_thread_check()` is defined as static. As the
function is defined in a header file which is included by our
tests, this can result in warnings for every test file where
`cl_git_thread_check` is never used.
Fix the issue by marking it as inline instead.
|
|\
| |
| | |
git_rebase_init: correctly handle detached HEAD
|
| |
| |
| |
| |
| |
| |
| |
| | |
git_rebase_finish relies on head_detached being set, but
rebase_init_merge was only setting it when branch->ref_name was unset.
But branch->ref_name would be set to "HEAD" in the case of detached
HEAD being either implicitly (NULL) or explicitly passed to
git_rebase_init.
|
|\ \
| | |
| | | |
Properly pass `wchar *` type to giterr_set
|
| | | |
|
| |/ |
|
|\ \
| |/
|/| |
remote: fix typo in git_fetch_init_options docs
|
|/ |
|
|\
| |
| | |
Introduce some clar helpers for child threads
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't `cl_git_pass` in a child thread. When the assertion fails, clar
will `longjmp` to its error handler, but:
> The effect of a call to longjmp() where initialization of the jmp_buf
> structure was not performed in the calling thread is undefined.
Instead, set up an error context that threads can populate, and the
caller can check.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We want a predictable number of initializations in our multithreaded
init test, but we also want to make sure that we have _actually_
initialized `git_libgit2_init` before calling `git_thread_create` (since
it now has a sanity check that `git_libgit2_init` has been called).
Since `git_thread_create` is internal-only, keep this sanity check.
Flip the invocation so that we `git_libgit2_init` before our thread
tests and `git_libgit2_shutdown` again after.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Introduce `git_thread_exit`, which will allow threads to terminate at an
arbitrary time, returning a `void *`. On Windows, this means that we
need to store the current `git_thread` in TLS, so that we can set its
`return` value when terminating.
We cannot simply use `ExitThread`, since Win32 returns `DWORD`s from
threads; we return `void *`.
|
|\ \
| |/
|/| |
use `giterr_set_str()` wherever possible
|
|/
|
|
|
|
|
|
|
|
| |
`giterr_set()` is used when it is required to format a string, and since
we don't really require it for this case, it is better to stick to
`giterr_set_str()`.
This also suppresses a warning(-Wformat-security) raised by the compiler.
Signed-off-by: Pranit Bauva <pranit.bauva@gmail.com>
|
|\
| |
| | |
Bump version number to v0.25
|
| | |
|
|\ \
| | |
| | | |
sortedcache: plug leaked file descriptor
|
| | | |
|
| | | |
|
|\ \ \
| |_|/
|/| | |
curl_stream: use CURLINFO_ACTIVESOCKET if curl is recent enough
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The `CURLINFO_LASTSOCKET` information has been deprecated since
curl version 7.45.0 as it may result in an overflow in the
returned socket on certain systems, most importantly on 64 bit
Windows. Instead, a new call `CURLINFO_ACTIVESOCKET` has been
added which instead returns a `curl_socket_t`, which is always
sufficiently long to store a socket.
As we need to provide backwards compatibility with curl versions
smaller than 7.45.0, alias CURLINFO_ACTIVESOCKET to
CURLINFO_LASTSOCKET on platforms without CURLINFO_ACTIVESOCKET.
|
|\ \ \
| | | |
| | | | |
Introduce a GitHub Issue Template
|
| | | | |
|
|\ \ \ \
| |_|_|/
|/| | | |
CHANGELOG: fill in some updates we missed
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Plug a leak in the refs compressor
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | | |
Repository discovery starting from files
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When trying to find a discovery, we walk up the directory
structure checking if there is a ".git" file or directory and, if
so, check its validity. But in the case that we've got a ".git"
file, we do not want to unconditionally assume that the file is
in fact a ".git" file and treat it as such, as we would error out
if it is not.
Fix the issue by only treating a file as a gitlink file if it
ends with "/.git". This allows users of the function to discover
a repository by handing in any path contained inside of a git
repository.
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
Use the sorted input in the tree updater
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We look at whether we're trying to replace a blob with a tree during the
update phase, but we fail to look at whether we've just inserted a blob
where we're now trying to insert a tree.
Update the check to look at both places. The test for this was
previously succeeding due to the bu where we did not look at the sorted
output.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The loop is made with the assumption that the inputs are sorted and not
using it leads to bad outputs.
|
| |/ / /
| | | |
| | | |
| | | |
| | | | |
We do not currently use the sorted version of this input in the
function, which means we produce bad results.
|