- 12 Jun, 2013 11 commits
-
-
Vicent Marti committed
-
Vicent Marti committed
-
Fix Windows warnings and missing prototypes
Russell Belfer committed -
This fixes problems with missing function prototypes and 64-bit data issues on Windows.
Russell Belfer committed -
Keep data about source of similarity
Vicent Martí committed -
Diff code reorg plus function context in diff headers
Vicent Martí committed -
This makes the git_diff_patch definition private to diff_patch.c and fixes a number of other header file naming inconsistencies to use `git_` prefixes on functions and structures that are shared between files.
Russell Belfer committed -
This changes the size data to uint32_t, fixes the array growth logic to use a simple 1.5x multiplier, and uses a generic inline function for growing the array to make the git_array_alloc API feel more natural (i.e. it returns a pointer to the new item).
Russell Belfer committed -
This adds two new public APIs: git_diff_patch_from_blobs and git_diff_patch_from_blob_and_buffer, plus it refactors the code for git_diff_blobs and git_diff_blob_to_buffer so that they code is almost entirely shared between these APIs, and adds tests for the new APIs.
Russell Belfer committed -
Russell Belfer committed
-
This adds real tests for user-configured diff drivers and in the process found a bunch of bugs.
Russell Belfer committed
-
- 11 Jun, 2013 5 commits
-
-
Add high(est) config level for application specific config files
Vicent Martí committed -
Some tools use an extra level to maintain an application specific config files on top of the normal ones. Revision 16adc9fa broke this. Signed-off-by: Sven Strickroth <email@cs-ware.de>
Sven Strickroth committed -
This implements the loading of regular expression pattern lists for diff drivers that search for function context in that way. This also changes the way that diff drivers update options and interface with xdiff APIs to make them a little more flexible.
Russell Belfer committed -
signature: extend trimming to more whitespace
Vicent Martí committed -
There are all sorts of misconfiguration in the wild. We already rely on the signature constructor to trim SP. Extend the logic to use `isspace` to decide whether a character should be trimmed.
Carlos Martín Nieto committed
-
- 10 Jun, 2013 6 commits
-
-
Russell Belfer committed
-
Russell Belfer committed
-
Russell Belfer committed
-
Edward Thomson committed
-
Edward Thomson committed
-
This is a significant reorganization of the diff code to break it into a set of more clearly distinct files and to document the new organization. Hopefully this will make the diff code easier to understand and to extend. This adds a new `git_diff_driver` object that looks of diff driver information from the attributes and the config so that things like function content in diff headers can be provided. The full driver spec is not implemented in the commit - this is focused on the reorganization of the code and putting the driver hooks in place. This also removes a few #includes from src/repository.h that were overbroad, but as a result required extra #includes in a variety of places since including src/repository.h no longer results in pulling in the whole world.
Russell Belfer committed
-
- 07 Jun, 2013 2 commits
-
-
This adds a `git__memset` routine that will not be optimized away and updates the places where I memset() right before a free() call to use it.
Russell Belfer committed -
Simplify git_futils_mkdir
Vicent Martí committed
-
- 05 Jun, 2013 9 commits
-
-
There are two places where git_futils_mkdir should exit early or at least do less. The first is when using GIT_MKDIR_SKIP_LAST and having that flag leave no directory left to create; it was being handled previously, but the behavior was subtle. Now I put in a clear explicit check that exits early in that case. The second is when there is no directory to create, but there is a valid path that should be verified. I shifted the logic a bit so we'll be better about not entering the loop than that happens.
Russell Belfer committed -
Russell Belfer committed
-
This implements a basic callback to extract function context for a diff. It always uses the same search heuristic right now with no regular expressions or language-specific variants. Those will come next, I think.
Russell Belfer committed -
This routine was (is) pretty complicated, but given the recent changes, it seemed like it could be simplified a bit.
Russell Belfer committed -
Vicent Marti committed
-
Ensure git_futils_mkdir won't mkdir root
Vicent Martí committed -
This makes sure that git_futils_mkdir always skips over the root directory at a minimum, even on platforms where the root is not simply '/'. Also, this removes the GIT_WIN32 ifdef in favor of making EACCES as a potentially recoverable error on all platforms.
Russell Belfer committed -
Allow creation of directories under the volume root in Win32
Vicent Martí committed -
We ran into an issue where cloning a repository to a folder directly underneath the root of a volume (e.g. 'd:\libgit2') would fail with an access denied error. This was traced down to a call to make a directory that is the root (e.g. 'd:') could return an error indicated access denied instead of an error indicating the path already exists. This change now handles the access denied error on Win32 and checks for the existence of the folder.
Jameson Miller committed
-
- 03 Jun, 2013 1 commit
-
-
Breaking RefDB changes
Vicent Martí committed
-
- 02 Jun, 2013 2 commits
-
-
Don't bail on parsing commits with an invalid timezone
Scott J. Goldman committed -
git doesn't do that, and it's not something that's usually actionable to fix. if you have a git repository with one bad timezone in the history, it's too late to change it most likely.
Scott J. Goldman committed
-
- 01 Jun, 2013 2 commits
-
-
Make git_index_read_tree preserve stat cache where possible
Vicent Martí committed -
Instead of just blowing away the stat cache data when loading a new tree into the index, this checks if each loaded item has a corresponding existing item with the same OID and if so, copies the stat data from the old item to the new one so it will not be blown away.
Russell Belfer committed
-
- 31 May, 2013 2 commits
-
-
Make iterators use GIT_ITEROVER & smart advance
Vicent Martí committed -
It is obviously quite a serious problem if this happens, but mutex initialization can fail and we should detect it. It's a bit like a memory allocation failure, in that you're probably pretty screwed if this occurs, but at least we'll catch it.
Russell Belfer committed
-