| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|/ / / / /
| | | | |
| | | | |
| | | | | |
(And move the ci scripts into the `ci` directory.)
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Deprecate `is_valid_name` functions; replace with `name_is_valid` functions
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
| | | | |
| | | | |
| | | | |
| | | | | |
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Provide a function that can check remote name validity but can also
signal when an error occurs. Use the name "name_is_valid", which is
more suggestive of checking a given name, rather than "is_valid_name",
which suggests that the function checks the validity of the current
remote's name.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Disambiguate invalid specifications in `git_refspec__parse` so that
callers can determine the difference between invalid specifications and
actual errors. No call sites wil propagagte this new error message to
an end-user, so there is no user-facing API change.
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Provide a function that can check reference name validity but can also
signal when an error occurs. Use the name "name_is_valid", which is
more suggestive of checking a given name, rather than "is_valid_name",
which suggests that the function checks the validity of the current
reference's name.
|
|/ / / /
| | | |
| | | |
| | | |
| | | | |
Move `git_reference__is_valid_name` to `git_reference__name_is_valid`,
which returns errors and sets an out boolean parameter.
|
|\ \ \ \
| | | | |
| | | | | |
Include `${MBEDTLS_INCLUDE_DIR}` when compiling `crypt_mbedtls.c`
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | | |
Without this, mbedTLS installs in non-default install locations
that are otherwise found by the `FindmbedTLS.cmake` module are not
found by the C preprocessor at compile time.
|
|\ \ \ \
| | | | |
| | | | | |
threadstate: rename tlsdata when building w/o threads
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
Refactor "global" state
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Now that we've identified that our global settings really aren't global
at all, and refactored the library to match that, change global.c to
libgit2.c, which is especially nice since the prefix of the functions
matches the filename.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Provide a mechanism for system components to register for initialization
and shutdown of the libgit2 runtime.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We want to store a pointer to emulate `pthread_exit` on Windows. Do
this within the threading infrastructure so that it could potentially be
re-used outside of the context of libgit2 itself.
|
| | | | |
| | | | |
| | | | |
| | | | | |
We were never properly testing git_thread_exit. Do so.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Our "global initialization" has accumulated some debris over the years.
It was previously responsible for both running the various global
initializers (that set up various subsystems) _and_ setting up the
"global state", which is actually the thread-local state for things
like error reporting.
Separate the thread local state out into "threadstate". Use the normal
subsystem initialization functions that we already have to set it up.
This makes both the global initialization system and the threadstate
system simpler to reason about.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Ensure that we can allocate the error message buffer. In keeping with
our typical policiess, we allow (small) memory leaks in the case where
we're out of memory.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Move the mwindow mutex into the mwindow code itself, initializing it in
the mwindow global initialization function instead of in the global
initializer.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Move the settings global data teardown into its own separate function,
instead of intermingled with the global state.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Move the MSVC C runtime debugging bits into the allocator's global init
function.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Instead of treating win32 thread initialization specially in the win32
git_libgit2_init function, add a git_global_threads_init function.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Make the Windows leak detection more robust
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This change:
* Increases MY_ROW_LIMIT to 2M, since it has been failing in #5595's
tests since it's _super_ close to the limit.
* Calls `git_repository_free()` on a `git_repository` that was being
leaked only in Windows.
* Marks the global `git_repository` on `tests/repo/init.c` as `NULL`
after being freed to make any accidental access more noisy.
* Uses `cl_assert_equal_i()` in `test_trace_windows_stacktrace__leaks`
to make the test failures more actionable.
* Renames the globals in `tests/repo/init.c` so that they don't start
with an underscore.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Define `git___load` when building with `-DTHREADSAFE=OFF`
|
| | |_|_|/
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This should allow folks that build in non-thread-safe environments to
still be able to build the library.
Fixes: #5663
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
ntlm: update ntlm dependency for htonll
|
| |/ / /
| | | |
| | | |
| | | |
| | | | |
Update ntlm to include an htonll that is not dependent on system
libraries.
|
|\ \ \ \
| |/ / /
|/| | | |
libgit2 v1.1.0
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Update PCRE to 8.44
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
We included their COPYING file, which was _not_ in fact their license.
Add the LICENSE file as well.
|
|\ \ \ \
| | | | |
| | | | | |
clone: update origin's HEAD
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Update `refs/remotes/origin/HEAD` as a symbolic link to the remote's
default branch.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Ensure that we created `refs/remotes/origin/HEAD` when cloning, a
symbolic link pointing to `refs/remotes/origin/<default>`
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Improve the support of atomics
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Instead, globally initialize the system page size.
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This change:
* Starts using GCC's and clang's `__atomic_*` intrinsics instead of the
`__sync_*` ones, since the former supercede the latter (and can be
safely replaced by their equivalent `__atomic_*` version with the
sequentially consistent model).
* Makes `git_atomic64`'s value `volatile`. Otherwise, this will make
ThreadSanitizer complain.
* Adds ways to load the values from atomics. As it turns out,
unsynchronized read are okay only in some architectures, but if we
want to be correct (and make ThreadSanitizer happy), those loads
should also be performed with the atomic builtins.
* Fixes two ThreadSanitizer warnings, as a proof-of-concept that this
works:
- Avoid directly accessing `git_refcount`'s `owner` directly, and
instead makes all callers go through the `GIT_REFCOUNT_*()` macros,
which also use the atomic utilities.
- Makes `pool_system_page_size()` race-free.
Part of: #5592
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fix error return for invalid extensions.
|
|/ / / / / |
|