|
e09d18ee
|
2013-05-03T18:39:44
|
|
allow checkout to proceed when a dir to be removed is in use (win32)
|
|
38eef611
|
2013-04-16T14:19:27
|
|
Make indexer use shared packfile open code
The indexer was creating a packfile object separately from the
code in pack.c which was a problem since I put a call to
git_mutex_init into just pack.c. This commit updates the pack
function for creating a new pack object (i.e. git_packfile_check())
so that it can be used in both places and then makes indexer.c
use the shared initialization routine.
There are also a few minor formatting and warning message fixes.
|
|
c6289186
|
2013-04-15T16:31:04
|
|
Fixes for Windows cas/threading stuff
|
|
b39f9697
|
2013-03-31T23:04:14
|
|
Fix whitespace in src/win32/version.h
|
|
5c5eeba6
|
2013-03-31T22:22:33
|
|
Add git_has_win32_version helper
|
|
8cc2f2d8
|
2013-03-31T12:10:27
|
|
Win32 error reporting: Support WinHTTP errors
|
|
32460251
|
2013-03-18T15:54:35
|
|
Fixes and cleanups
Get rid of some dead code, tighten things up a bit, and fix a bug
with core::env test.
|
|
41954a49
|
2013-03-18T14:19:35
|
|
Switch search paths to classic delimited strings
This switches the APIs for setting and getting the global/system
search paths from using git_strarray to using a simple string with
GIT_PATH_LIST_SEPARATOR delimited paths, just as the environment
PATH variable would contain. This makes it simpler to get and set
the value.
I also added code to expand "$PATH" when setting a new value to
embed the old value of the path. This means that I no longer
require separate actions to PREPEND to the value.
|
|
5540d947
|
2013-03-15T16:39:00
|
|
Implement global/system file search paths
The goal of this work is to expose the search logic for "global",
"system", and "xdg" files through the git_libgit2_opts() interface.
Behind the scenes, I changed the logic for finding files to have a
notion of a git_strarray that represents a search path and to store
a separate search path for each of the three tiers of config file.
For each tier, I implemented a function to initialize it to default
values (generally based on environment variables), and then general
interfaces to get it, set it, reset it, and prepend new directories
to it.
Next, I exposed these interfaces through the git_libgit2_opts
interface, reusing the GIT_CONFIG_LEVEL_SYSTEM, etc., constants
for the user to control which search path they were modifying.
There are alternative designs for the opts interface / argument
ordering, so I'm putting this phase out for discussion.
Additionally, I ended up doing a little bit of clean up regarding
attr.h and attr_file.h, adding a new attrcache.h so the other two
files wouldn't have to be included in so many places.
|
|
cc427158
|
2013-02-28T15:09:32
|
|
Merge pull request #1373 from arrbee/why-cdecl-why
Why cdecl why?
|
|
f443a72d
|
2013-02-28T14:41:26
|
|
Fix some deprecation warnings on Windows
This fixes some snprintf and vsnprintf related deprecation
warnings we've been having on Windows with recent compilers.
|
|
97b71374
|
2013-02-28T14:14:45
|
|
Add GIT_STDLIB_CALL
This removes the one-off GIT_CDECL and adds a new standard way of
doing this named GIT_STDLIB_CALL with a src/win32 specific def
when on the Windows platform.
|
|
5fa8abb8
|
2013-02-28T17:36:20
|
|
w32-posix: Wrap the `timezone` declaration with a clause
Allows compilation in newer versions of MinGW that already defined it.
|
|
82ac1f76
|
2013-02-27T19:48:02
|
|
Win32: Use constants in version resource definitions where possible
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
5f633e91
|
2013-02-13T18:12:51
|
|
Change git2.rc to identify git.dll as VOS_NT_WINDOWS32
|
|
ff9df883
|
2013-02-08T14:27:21
|
|
Fix Windows symlinks
|
|
7672c8c7
|
2013-02-08T11:29:23
|
|
Moved braces to conform to code style
|
|
64012fdb
|
2013-02-08T03:24:45
|
|
Replace LoadLibrary with GetModuleHandle, since kernel32 is loaded by default
As requested
|
|
a49e5bed
|
2013-02-08T01:26:04
|
|
Replace call to strnlen with call to strlen
|
|
f88885e3
|
2013-02-08T01:10:03
|
|
Include <string.h>
|
|
3b5e44ae
|
2013-02-08T00:50:20
|
|
Fix call to readlink
|
|
94ed23f8
|
2013-02-07T01:41:20
|
|
Call p_readlink to determine symlink size
|
|
e9631660
|
2013-02-01T15:57:31
|
|
Merge pull request #1303 from csware/win32_consistent_error_encoding
Win32: Make sure error messages are consistently UTF-8 encoded
|
|
c70455c7
|
2013-02-01T22:53:51
|
|
Deduplicate FormatMessage UTF-16 to UTF-8 conversion code
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
45792c92
|
2013-02-01T10:32:05
|
|
Stick to coding style: Move up braces
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
c55378fc
|
2013-01-31T17:43:59
|
|
Detect msysgit installation of users without admin rights
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
ec56af08
|
2013-01-31T17:37:20
|
|
Refactored: Move msysgit registry detection to it's own function
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
359fc2d2
|
2013-01-08T17:07:25
|
|
update copyrights
|
|
bdb94c21
|
2012-12-17T12:20:52
|
|
Fix MSVC compilation warnings
|
|
a8122b5d
|
2012-11-21T15:39:03
|
|
Fix warnings on Win64 build
|
|
54b2a37a
|
2012-11-20T16:02:25
|
|
Clean up config.h
|
|
cf0dadcf
|
2012-11-20T01:19:31
|
|
Minor optimization in win32 do_lstat
|
|
2d96fce2
|
2012-11-19T23:12:20
|
|
update win32 lstat comment
|
|
52ead787
|
2012-11-19T22:30:20
|
|
Fix win32 lstat
|
|
cccacac5
|
2012-11-14T22:41:51
|
|
Add POSIX compat lstat() variant for win32
The existing p_lstat implementation on win32 is not quite POSIX
compliant when setting errno to ENOTDIR. This adds an option to
make is be compliant so that code (such as checkout) that cares
to have separate behavior for ENOTDIR can use it portably.
This also contains a couple of other minor cleanups in the
posix_w32.c implementations to avoid unnecessary work.
|
|
345eef23
|
2012-11-07T16:10:57
|
|
Move inet_pton to posix platform-compatibility layer
|
|
b4491b99
|
2012-10-16T16:18:21
|
|
Incremental improvements to pack-objects logic
Incorporate feedback for incr. improvements to pack-objects
|
|
5e4f2b5f
|
2012-10-16T13:18:45
|
|
Support pthread_cond_* on Win32
|
|
52748f7b
|
2012-10-16T08:36:55
|
|
Merge pull request #952 from csware/config-locations
Config location fixes
|
|
824d5e4d
|
2012-10-11T11:58:00
|
|
Always use internal fnmatch, not system
|
|
997579be
|
2012-10-02T17:55:29
|
|
Move win32 specific stuff to win32/findfile.c
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
9ac8b113
|
2012-09-20T14:06:49
|
|
Fix MSVC amd64 compilation warnings
|
|
0f4c6175
|
2012-08-28T22:19:08
|
|
Add bounds checking to UTF-8 conversion
|
|
6813169a
|
2012-08-06T12:45:59
|
|
windows: Keep UTF-8 on the stack yo
|
|
3b73a034
|
2012-04-25T16:26:12
|
|
UTF-8 changes yo
|
|
e9ca852e
|
2012-08-23T09:20:17
|
|
Fix warnings and merge issues on Win64
|
|
ca1b6e54
|
2012-07-31T17:02:54
|
|
Add template dir and set gid to repo init
This extends git_repository_init_ext further with support for
initializing the repository from an external template directory
and with support for the "create shared" type flags that make a
set GID repository directory.
This also adds tests for much of the new functionality to the
existing `repo/init.c` test suite.
Also, this adds a bunch of new utility functions including a
very general purpose `git_futils_mkdir` (with the ability to
make paths and to chmod the paths post-creation) and a file
tree copying function `git_futils_cp_r`. Also, this includes
some new path functions that were useful to keep the code
simple.
|
|
f98c32f3
|
2012-08-19T01:26:06
|
|
Merge pull request #778 from ben/clone
Clone
|
|
d96c3863
|
2012-08-02T01:56:02
|
|
win32: set errno to ENOENT or ENOTDIR when appropriate in do_lstat
|
|
8651c10f
|
2012-07-17T19:57:37
|
|
Checkout: obey core.symlinks.
|
|
bfc65634
|
2012-07-17T08:08:34
|
|
Merge branch 'development' into clone
|
|
1d68fcd0
|
2012-07-16T16:16:11
|
|
Checkout: handle symlinks.
Includes unfinished win32 implementation.
|
|
dfa0b65c
|
2012-06-21T20:17:54
|
|
fix below issues on mingw:
1. compile warning:
D:\libgit2.git\src\win32\posix_w32.c: In function 'p_open':
D:\libgit2.git\src\win32\posix_w32.c:235:10: warning: 'mode_t' is promoted to 'int' when passed through '...' [enabled by default]
D:\libgit2.git\src\win32\posix_w32.c:235:10: note: (so you should pass 'int' not 'mode_t' to 'va_arg')
D:\libgit2.git\src\win32\posix_w32.c:235:10: note: if this code is reached, the program will abort
2. test crash.
3. the above two issues are same root cause. please see http://www.eskimo.com/~scs/cclass/int/sx11c.html
|
|
73aaf674
|
2012-06-13T14:22:33
|
|
Precompile headers for MSVC.
|
|
3f035860
|
2012-06-07T22:43:03
|
|
misc: Fix warnings from PVS Studio trial
|
|
b9ebcc59
|
2012-06-07T12:29:31
|
|
Merge pull request #684 from benstraub/rev-parse
Rev parse
|
|
9ecf860d
|
2012-06-06T13:24:25
|
|
Rename posix wrappers with 'p_' prefix.
|
|
56a5000d
|
2012-06-05T12:52:44
|
|
Merge branch 'development' into rev-parse
Conflicts:
src/util.h
tests-clar/refs/branches/listall.c
|
|
fac66990
|
2012-06-05T13:56:44
|
|
repository: make git_repository_init() value the core.filemode config entry
|
|
9e35d7fd
|
2012-05-24T13:44:24
|
|
Fix bugs in UTF-8 <-> UTF-16 conversion
The function to convert UTF-16 to UTF-8 was only allocating a
buffer of wcslen(utf16str) bytes for the UTF-8 string, but that
is not sufficient if you have multibyte characters, and so when
those occured, the conversion was failing. This updates the
conversion functions to use the Win APIs to calculate the correct
buffer lengths.
Also fixes a comparison in the unit tests that would fail if
you did not have a particular environment variable set.
|
|
1ce4cc01
|
2012-05-15T15:41:05
|
|
Fix date.c build in msvc.
Ported the win32 implementations of gmtime_r,
localtime_r, and gettimeofday to be part of the
posix compatibility layer, and fixed
git_signature_now to use them.
|
|
ec42eafd
|
2012-05-09T22:30:57
|
|
Hook up Windows compat fnmatch() for Solaris
Since Solaris does not support some of the same flags as glibc fnmatch(),
we just use the implementation we have for Windows.
Now that it's no longer a windows-specific thing, I moved it into compat/
instead of win32/
|
|
9abb5bca
|
2012-05-07T13:58:01
|
|
compat: make p_realpath Windows implementation be a bit more POSIX compliant and fail if the provided path does not lead to an existing entry
|
|
3191ae89
|
2012-05-06T13:04:12
|
|
compat: make p_open able to accept optional mode when passing the O_CREAT flag
This has the nice side effect of making test_attr_repo__staging_properly_normalizes_line_endings_according_to_gitattributes_directives() test pass again on Windows. This test started to fail after commit 674a198 was applied.
|
|
cd58c15c
|
2012-05-05T16:47:20
|
|
Merge remote-tracking branch 'scottjg/fix-mingw32' into development
Conflicts:
src/netops.c
src/netops.h
src/transports/http.c
tests-clar/clar
|
|
b47e0a71
|
2012-05-05T13:52:48
|
|
Fix missing prototype warning in utf-conv.c
|
|
44ef8b1b
|
2012-04-13T13:00:10
|
|
Fix warnings on 64-bit windows builds
This fixes all the warnings on win64 except those in deps, which
come from the regex code.
|
|
deafee7b
|
2012-03-14T17:36:15
|
|
Continue error conversion
This converts blob.c, fileops.c, and all of the win32 files.
Also, various minor cleanups throughout the code. Plus, in
testing the win32 build, I cleaned up a bunch (although not
all) of the warnings with the 64-bit build.
|
|
e3c47510
|
2012-03-13T14:23:24
|
|
Resolve comments from pull request
This converts the map validation function into a macro, tweaks
the GITERR_OS system error automatic appending, and adds a
tentative new error access API and some quick unit tests for
both the old and new error APIs.
|
|
e1de726c
|
2012-03-12T22:55:40
|
|
Migrate ODB files to new error handling
This migrates odb.c, odb_loose.c, odb_pack.c and pack.c to
the new style of error handling. Also got the unix and win32
versions of map.c. There are some minor changes to other
files but no others were completely converted.
This also contains an update to filebuf so that a zeroed out
filebuf will not think that the fd (== 0) is actually open
(and inadvertently call close() on fd 0 if cleaned up).
Lastly, this was built and tested on win32 and contains a
bunch of fixes for the win32 build which was pretty broken.
|
|
cb8a7961
|
2012-03-07T00:02:55
|
|
error-handling: Repository
This also includes droping `git_buf_lasterror` because it makes no sense
in the new system. Note that in most of the places were it has been
dropped, the code needs cleanup. I.e. GIT_ENOMEM is going away, so
instead it should return a generic `-1` and obviously not throw
anything.
|
|
60bc2d20
|
2012-02-14T21:23:11
|
|
error-handling: Add new routines
Obviously all the old throw routines are still in place, so we can
gradually port over.
|
|
854eccbb
|
2012-02-29T12:04:59
|
|
Clean up GIT_UNUSED macros on all platforms
It turns out that commit 31e9cfc4cbcaf1b38cdd3dbe3282a8f57e5366a5
did not fix the GIT_USUSED behavior on all platforms. This commit
walks through and really cleans things up more thoroughly, getting
rid of the unnecessary stuff.
To remove the use of some GIT_UNUSED, I ended up adding a couple
of new iterators for hashtables that allow you to iterator just
over keys or just over values.
In making this change, I found a bug in the clar tests (where we
were doing *count++ but meant to do (*count)++ to increment the
value). I fixed that but then found the test failing because it
was not really using an empty repo. So, I took some of the code
that I wrote for iterator testing and moved it to clar_helpers.c,
then made use of that to make it easier to open fixtures on a
per test basis even within a single test file.
|
|
74fa4bfa
|
2012-02-28T16:14:47
|
|
Update diff to use iterators
This is a major reorganization of the diff code. This changes
the diff functions to use the iterators for traversing the
content. This allowed a lot of code to be simplified. Also,
this moved the functions relating to outputting a diff into a
new file (diff_output.c).
This includes a number of other changes - adding utility
functions, extending iterators, etc. plus more tests for the
diff code. This also takes the example diff.c program much
further in terms of emulating git-diff command line options.
|
|
2705576b
|
2012-01-24T14:06:42
|
|
Simplify GIT_UNUSED macros
Since casting to void works to eliminate errors with unused
parameters on all platforms, avoid the various special cases.
Over time, it will make sense to eliminate the GIT_UNUSED
macro completely and just have GIT_UNUSED_ARG.
|
|
290f240e
|
2012-02-23T11:16:47
|
|
Fix readdir usage across platforms
This fixes the missing readdir_r from win32 and fixes other
platforms to always use the reentrant readdir_r form for reading
directory contents.
|
|
5e0de328
|
2012-02-13T17:10:24
|
|
Update Copyright header
Signed-off-by: schu <schu-github@schulog.org>
|
|
a53420e4
|
2012-01-26T17:53:46
|
|
msvc: Move `ssize_t` typedef to MSVC-only
This is a MSVC-only issue. All other compilers we support work properly.
|
|
1744fafe
|
2012-01-17T15:49:47
|
|
Move path related functions from fileops to path
This takes all of the functions that look up simple data about
paths (such as `git_futils_isdir`) and moves them over to path.h
(becoming `git_path_isdir`). This leaves fileops.h just with
functions that actually manipulate the filesystem or look at
the file contents in some way.
As part of this, the dir.h header which is really just for win32
support was moved into win32 (with some minor changes).
|
|
fdc8a7db
|
2012-01-17T14:06:35
|
|
Fix MSVC compilation warning
|
|
d9e5430e
|
2012-01-16T11:45:34
|
|
Windows: store all 64 bits of the size in the stat structure
We force stat to be a stat64 structure, so we can and should put all
64 bits of the size in st_size.
|
|
c6a437ea
|
2012-01-03T19:44:13
|
|
Add missing semicolon
|
|
73b51450
|
2011-12-28T23:28:50
|
|
Add support for macros and cache flush API.
Add support for git attribute macro definitions. Also, add
support for cache flush API to clear the attribute file content
cache when needed.
Additionally, improved the handling of global and system files,
making common utility functions in fileops and converting config
and attr to both use the common functions.
Adds a bunch more tests and fixed some memory leaks. Note that
adding macros required me to use refcounted attribute assignment
definitions, which complicated, but probably improved memory usage.
|
|
489c3666
|
2011-12-14T20:00:34
|
|
posix_w32: prevent segfaulting on Windows when building a temporary filename
|
|
97769280
|
2011-11-30T11:27:15
|
|
Use git_buf for path storage instead of stack-based buffers
This converts virtually all of the places that allocate GIT_PATH_MAX
buffers on the stack for manipulating paths to use git_buf objects
instead. The patch is pretty careful not to touch the public API
for libgit2, so there are a few places that still use GIT_PATH_MAX.
This extends and changes some details of the git_buf implementation
to add a couple of extra functions and to make error handling easier.
This includes serious alterations to all the path.c functions, and
several of the fileops.c ones, too. Also, there are a number of new
functions that parallel existing ones except that use a git_buf
instead of a stack-based buffer (such as git_config_find_global_r
that exists alongsize git_config_find_global).
This also modifies the win32 version of p_realpath to allocate whatever
buffer size is needed to accommodate the realpath instead of hardcoding
a GIT_PATH_MAX limit, but that change needs to be tested still.
|
|
0c49ec2d
|
2011-11-07T19:34:24
|
|
Implement p_rename
Move the callers of git_futils_mv_atomic to use p_rename.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
89fb8f02
|
2011-10-28T19:04:23
|
|
Merge pull request #456 from brodie/perm-fixes
Create objects, indexes, and directories with the right file permissions
|
|
3286c408
|
2011-10-28T14:51:13
|
|
global: Properly use `git__` memory wrappers
Ensure that all memory related functions (malloc, calloc, strdup, free,
etc) are using their respective `git__` wrappers.
|
|
11d51ca6
|
2011-10-26T16:43:55
|
|
windows: Add support for non-UTF codepages
Our previous assumption that all paths in Windows are encoded in UTF-8
is rather weak, specially when considering that Git is
encoding-agnostic.
These set of functions allow the user to change the library's active
codepage globally, so it is possible to access paths and files on all
international versions of Windows.
Note that the default encoding here is UTF-8 because we assume that 99%
of all Git repositories will be in UTF-8.
Also, if you use non-ascii characters in paths, anywhere, please burn on
a fire.
|
|
33127043
|
2011-10-14T14:18:02
|
|
fileops/posix: replace usage of "int mode" with "mode_t mode"
Note: Functions exported from fileops take const mode_t, while the
underlying POSIX wrappers take mode_t.
|
|
cf9bf6b7
|
2011-10-09T18:45:23
|
|
include version information in git2.dll on Windows
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
c060854e
|
2011-10-04T21:11:51
|
|
msvc: Properly handle inttypes.h/stdint.h
|
|
6c8b458d
|
2011-09-29T17:04:45
|
|
mingw: Fix compilation warnings
|
|
72bdfdbc
|
2011-09-29T15:24:41
|
|
http-parser: Disable MSVC warnings locally
|
|
5888860d
|
2011-09-28T23:42:38
|
|
msvc: Disable warnings in header file
Remove clutter from the CMakeLists file by disabling the warnings
programatically.
|
|
01d7fded
|
2011-09-22T20:44:30
|
|
Revert "Rewrite getenv to use Win32 version on Windows"
This reverts commit e1b86444676b70154bf8ab450d429bdef57a8276.
|
|
dd44887a
|
2011-09-23T00:00:05
|
|
Implment p_access and use it in git_fileutils_exists
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
e1b86444
|
2011-09-21T11:17:30
|
|
Rewrite getenv to use Win32 version on Windows
|
|
e3ecf7e9
|
2011-09-21T14:09:56
|
|
Do not have duplicate filenames
Two `posix.c` files may or may not break MSVC builds under 2008. Do not
have repeated objects.
You will need to clean & regenerate CMake.
|
|
6d0ef974
|
2011-09-19T12:41:27
|
|
Fix opendir/readdir and friends on Win32 to use Unicode
|