- 17 Oct, 2021 1 commit
-
-
libgit2 has two distinct requirements that were previously solved by `git_buf`. We require: 1. A general purpose string class that provides a number of utility APIs for manipulating data (eg, concatenating, truncating, etc). 2. A structure that we can use to return strings to callers that they can take ownership of. By using a single class (`git_buf`) for both of these purposes, we have confused the API to the point that refactorings are difficult and reasoning about correctness is also difficult. Move the utility class `git_buf` to be called `git_str`: this represents its general purpose, as an internal string buffer class. The name also is an homage to Junio Hamano ("gitstr"). The public API remains `git_buf`, and has a much smaller footprint. It is generally only used as an "out" param with strict requirements that follow the documentation. (Exceptions exist for some legacy APIs to avoid breaking callers unnecessarily.) Utility functions exist to convert a user-specified `git_buf` to a `git_str` so that we can call internal functions, then converting it back again.
Edward Thomson committed
-
- 10 Jun, 2018 1 commit
-
-
Patrick Steinhardt committed
-
- 17 Mar, 2015 1 commit
-
-
The caller has otherwise no way to know how long the string will be allocated or ability to free it. This fixes #2944.
Carlos Martín Nieto committed
-
- 06 Dec, 2014 1 commit
-
-
Make it consistent between git_note_create() and git_note_remote() by putting it after the repository.
Carlos Martín Nieto committed
-
- 01 Jul, 2014 1 commit
-
-
Edward Thomson committed
-
- 24 Jan, 2014 1 commit
-
-
This was left over when we did the general switch.
Carlos Martín Nieto committed
-
- 14 Nov, 2013 1 commit
-
-
Ben Straub committed
-
- 25 Jan, 2013 1 commit
-
-
Replaced all cl_assert(!strcmp()) or semantically equivalent forms by cl_assert_equal_s().
Sebastian Bauer committed
-
- 04 Jan, 2013 1 commit
-
-
Nikolai Vladimirov committed
-
- 03 Jan, 2013 1 commit
-
-
Nikolai Vladimirov committed
-
- 27 Nov, 2012 1 commit
-
-
Ben Straub committed
-
- 23 Nov, 2012 1 commit
-
-
Without this change, any failed assertion in the second (or a later) test inside a test suite has a chance of double deleting memory, resulting in a heap corruption. See #1096 for details. This leaves alone the test cases where we "just" use cl_git_sandbox_init() and cl_git_sandbox_cleanup(). These methods already take good care to not double delete a repository. Fixes #1096
Sascha Cunz committed
-
- 03 May, 2012 2 commits
-
-
Add git_note_default_ref to allow easy retrieval of the currently set default notes reference.
Michael Schubert committed -
Setting core.notesRef allows to change the default notes reference used by Git. Check if set before using GIT_NOTES_DEFAULT_REF. Fixes #649.
Michael Schubert committed
-