summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* sysdir: don't guess the paths again when $PATH is specifiedcmn/sysdir-no-reguessCarlos Martín Nieto2016-12-181-1/+1
| | | | We should replace it with whatever the user set, not start again.
* sysdir: add failing test for variable substitutionCarlos Martín Nieto2016-12-181-0/+21
| | | | | When given $PATH as part of a search path, we guess again instead of substituting what the user already set.
* Merge pull request #4029 from libgit2/cmn/windows-no-concurrent-compressv0.24.4Edward Thomson2016-12-151-2/+8
|\ | | | | refdb: disable concurrent compress in the threading tests on Windows
| * refdb: disable concurrent compress in the threading tests on Windowscmn/windows-no-concurrent-compressCarlos Martín Nieto2016-12-121-2/+8
| | | | | | | | | | | | | | | | | | 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.
* | Merge pull request #4018 from pks-t/pks/various-fixesCarlos Martín Nieto2016-12-128-12/+13
|\ \ | |/ |/| Various fixes
| * Fix potential use of uninitialized valuesPatrick Steinhardt2016-12-123-3/+5
| |
| * graph: flag fields should be declared as unsignedPatrick Steinhardt2016-12-121-1/+1
| |
| * transports: smart: do not redeclare loop countersPatrick Steinhardt2016-12-121-4/+4
| |
| * path: remove unused local variablePatrick Steinhardt2016-12-121-1/+0
| |
| * revwalk: do not re-declare `commit` variablePatrick Steinhardt2016-12-121-1/+1
| |
| * odb_mempack: mark zero-length array as GIT_FLEX_ARRAYPatrick Steinhardt2016-12-121-1/+1
| |
| * clar: mark `cl_git_thread_check()` as inlinePatrick Steinhardt2016-12-121-1/+1
|/ | | | | | | | | 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.
* Merge pull request #4020 from novalis/rebase-detachedEdward Thomson2016-12-072-1/+54
|\ | | | | git_rebase_init: correctly handle detached HEAD
| * git_rebase_init: correctly handle detached HEADDavid Turner2016-12-012-1/+54
| | | | | | | | | | | | | | | | 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.
* | Merge pull request #4014 from bokic/patch-1Edward Thomson2016-12-071-1/+1
|\ \ | | | | | | Properly pass `wchar *` type to giterr_set
| * | Properly pass `wchar *` type to giterr_setBoris Barbulovski2016-12-061-1/+1
| | |
| * | Properly pass `wchar *` type to giterr_setBoris Barbulovski2016-11-201-1/+1
| |/
* | Merge pull request #4022 from josharian/patch-1Edward Thomson2016-12-041-1/+1
|\ \ | |/ |/| remote: fix typo in git_fetch_init_options docs
| * remote: fix typo in git_fetch_init_options docsJosh Bleecher Snyder2016-12-021-1/+1
|/
* Merge pull request #4010 from libgit2/ethomson/clar_threadsCarlos Martín Nieto2016-11-188-12/+122
|\ | | | | Introduce some clar helpers for child threads
| * tests: handle life without threadsethomson/clar_threadsEdward Thomson2016-11-182-2/+12
| |
| * threads::refdb tests: use new threaded clar assertEdward Thomson2016-11-181-10/+14
| |
| * clar: Introduce assertion helpers for threadsEdward Thomson2016-11-181-0/+41
| | | | | | | | | | | | | | | | | | | | | | 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.
| * core::init tests: reverse init/shutdownEdward Thomson2016-11-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | 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.
| * threads: introduce `git_thread_exit`Edward Thomson2016-11-185-0/+55
| | | | | | | | | | | | | | | | | | | | 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 *`.
* | Merge pull request #4009 from pranitbauva1997/fix-string-formatCarlos Martín Nieto2016-11-172-2/+2
|\ \ | |/ |/| use `giterr_set_str()` wherever possible
| * use `giterr_set_str()` wherever possiblePranit Bauva2016-11-172-2/+2
|/ | | | | | | | | | `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>
* Merge pull request #4007 from libgit2/cmn/bump-v25v0.25.0-rc1Carlos Martín Nieto2016-11-152-4/+15
|\ | | | | Bump version number to v0.25
| * Bump version number to v0.25cmn/bump-v25Carlos Martín Nieto2016-11-152-4/+15
| |
* | Merge pull request #4008 from pks-t/pks/sortedcache-fd-leakCarlos Martín Nieto2016-11-152-1/+4
|\ \ | | | | | | sortedcache: plug leaked file descriptor
| * | patch_parse: fix memory leakPatrick Steinhardt2016-11-151-1/+3
| | |
| * | sortedcache: plug leaked file descriptorPatrick Steinhardt2016-11-151-0/+1
| | |
* | | Merge pull request #3996 from pks-t/pks/curl-lastsocket-deprecationCarlos Martín Nieto2016-11-151-3/+14
|\ \ \ | |_|/ |/| | curl_stream: use CURLINFO_ACTIVESOCKET if curl is recent enough
| * | curl_stream: use CURLINFO_ACTIVESOCKET if curl is recent enoughPatrick Steinhardt2016-11-151-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Merge pull request #3962 from libgit2/ethomson/issue_templateCarlos Martín Nieto2016-11-151-0/+14
|\ \ \ | | | | | | | | Introduce a GitHub Issue Template
| * | | Introduce a GitHub Issue Templateethomson/issue_templateEdward Thomson2016-11-141-0/+14
| | | |
* | | | Merge pull request #4004 from libgit2/cmn/changelogCarlos Martín Nieto2016-11-151-2/+63
|\ \ \ \ | |_|_|/ |/| | | CHANGELOG: fill in some updates we missed
| * | | CHANGELOG: fill in some updates we missedcmn/changelogCarlos Martín Nieto2016-11-141-2/+63
| | | |
* | | | Merge pull request #4006 from libgit2/cmn/compress-buf-freeEdward Thomson2016-11-141-0/+2
|\ \ \ \ | | | | | | | | | | Plug a leak in the refs compressor
| * | | | Plug a leak in the refs compressorcmn/compress-buf-freeCarlos Martín Nieto2016-11-141-0/+2
| |/ / /
* | | | Merge pull request #3998 from pks-t/pks/repo-discoveryCarlos Martín Nieto2016-11-142-57/+105
|\ \ \ \ | | | | | | | | | | Repository discovery starting from files
| * | | | repository: do not interpret all files as gitlinks in discoveryPatrick Steinhardt2016-11-142-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | test: discover: fix indentationPatrick Steinhardt2016-11-141-1/+1
| | | | |
| * | | | test: discover: split up monolithic test into smaller onesPatrick Steinhardt2016-11-141-49/+67
| | | | |
| * | | | test: discover: pass constants to ensure_repository_discoverPatrick Steinhardt2016-11-141-19/+26
| | | | |
| * | | | test: discover: move layout creation into test initializerPatrick Steinhardt2016-11-141-22/+35
| | | | |
* | | | | Merge pull request #4003 from libgit2/cmn/tree-updater-orderingEdward Thomson2016-11-142-2/+62
|\ \ \ \ \ | |_|/ / / |/| | | | Use the sorted input in the tree updater
| * | | | tree: look for conflicts in the new tree when updatingcmn/tree-updater-orderingCarlos Martín Nieto2016-11-141-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | tree: use the sorted update list in our loopCarlos Martín Nieto2016-11-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | The loop is made with the assumption that the inputs are sorted and not using it leads to bad outputs.
| * | | | tree: add a failing test for unsorted inputCarlos Martín Nieto2016-11-141-0/+57
| |/ / / | | | | | | | | | | | | | | | | We do not currently use the sorted version of this input in the function, which means we produce bad results.