summaryrefslogtreecommitdiff
path: root/src/win32
Commit message (Collapse)AuthorAgeFilesLines
* More filemode cleanups for FAT on MacOSRussell Belfer2013-10-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | This cleans up some additional issues. The main change is that on a filesystem that doesn't support mode bits, libgit2 will now create new blobs with GIT_FILEMODE_BLOB always instead of being at the mercy to the filesystem driver to report executable or not. This means that if "core.filemode" lies and claims that filemode is not supported, then we will ignore the executable bit from the filesystem. Previously we would have allowed it. This adds an option to the new git_repository_reset_filesystem to recurse through submodules if desired. There may be other types of APIs that would like a "recurse submodules" option, but this one is particularly useful. This also has a number of cleanups, etc., for related things including trying to give better error messages when problems come up from the filesystem. For example, the FAT filesystem driver on MacOS appears to return errno EINVAL if you attempt to write a filename with invalid UTF-8 in it. We try to capture that with a better error message now.
* Merge pull request #1858 from linquize/win32-template-dirVicent Martí2013-09-172-11/+11
|\ | | | | Configurable template dir for Win32
| * Refactor git_win32__find_system_dirs() to extract "etc\\" as subpath parameterLinquize2013-09-172-11/+11
| |
* | Bug fixes and cleanupsRussell Belfer2013-09-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This contains a few bug fixes and some header and API cleanups. The main API change is that filters should now use GIT_PASSTHROUGH to indicate that they wish to skip processing a file instead of GIT_ENOTFOUND. The bug fixes include a possible out-of-range buffer access in the ident filter, a filter ordering problem I introduced into the custom filter tests on Windows, and a filter buf NUL termination issue that was coming up on Linux.
* | Add simple global shutdown hooksRussell Belfer2013-09-172-10/+9
|/ | | | | | | | | | Increasingly there are a number of components that want to do some cleanup at global shutdown time (at least if there are not going to be memory leaks). This creates a very simple system of shutdown hooks that will be invoked by git_threads_shutdown. Right now, the maximum number of hooks is hardcoded, but since adding a hook is not a public API, it should be fine and I thought it was better to start off with really simple code.
* Fix failure in win32_find_git_in_registry() when UAC is turned onLinquize2013-09-171-1/+1
| | | | | Demand read only access to registry key instead of full access. This might happen in Windows Vista and later.
* Fix failure in win32_find_git_in_registry()Linquize2013-09-171-1/+1
| | | | The buffer size 0 was definitely not enough so it failed
* Fix warning in src/win32/version.hLinquize2013-09-051-1/+1
|
* Merge pull request #1805 from libgit2/threading-packed-loadVicent Martí2013-08-282-8/+141
|\ | | | | Thread safety for the refdb_fs
| * Convert to our own SRWLOCK type on Win32Russell Belfer2013-08-273-4/+4
| |
| * Fix MINGW SRWLock typedefsRussell Belfer2013-08-262-2/+2
| |
| * Load SRWLock APIs at runtimeRussell Belfer2013-08-262-11/+92
| | | | | | | | | | | | This loads SRWLock APIs at runtime and in their absence (i.e. on Windows before Vista) falls back on a regular CRITICAL_SECTION that will not permit concurrent readers.
| * Trying to fix Win32 warningsRussell Belfer2013-08-221-5/+7
| |
| * Add SRWLock implementation of rwlocks for Win32Russell Belfer2013-08-222-1/+51
| |
* | Improve win32 version check, no ipv6 tests on XPEdward Thomson2013-08-272-5/+22
|/
* Quiet down some warningsEdward Thomson2013-08-191-1/+1
|
* Fix p_inet_pton on windowsEdward Thomson2013-08-192-32/+35
| | | | | | p_inet_pton on Windows should set errno properly for callers. Rewrite p_inet_pton to handle error cases correctly and add test cases to exercise this function.
* Use time(2) to get the timeEdward Thomson2013-08-191-50/+0
| | | | | | We didn't use the added precision in gettimeofday, so remove it. This prevents us from having an unnecessary reimplementation on win32.
* Give credit to PHP for the p_readlink function in posix_w32.cMartin Woodward2013-08-161-0/+9
|
* Merge pull request #1779 from ben/win32-precompiled-header-speedupBen Straub2013-08-131-0/+3
|\ | | | | Speed up build under MSVC
| * Add some things to precompiled headerBen Straub2013-08-131-0/+3
| |
* | Merge pull request #1767 from libgit2/win32-bigger-utf8-bufferVicent Martí2013-08-137-78/+94
|\ \ | |/ |/| Bigger buffer for utf-8 parsing in win32
| * Missed one path for path_as_utf8 typeRussell Belfer2013-08-131-1/+1
| |
| * Minor win32 fixes and improvementsRussell Belfer2013-08-133-16/+11
| | | | | | | | | | | | | | | | This is just a bunch of small fixes that I noticed while looking at the UTF8 and UTF16 path stuff. It fixes a slowdown in looking for an empty directory (not exiting loop asap), makes the dir name in the git__DIR structure be a GIT_FLEX_ARRAY to save an allocation, and fixes some slightly odd assumptions in the cl_getenv helper.
| * Reintroduce type for UTF8 win32 path conversionsRussell Belfer2013-08-134-10/+11
| |
| * Rename git__win32_path fns to git_win32_pathRussell Belfer2013-08-134-21/+24
| |
| * Fix mingw cross-compile buildBen Straub2013-08-131-0/+1
| |
| * windows: Fuck meVicent Marti2013-08-132-1/+2
| |
| * windows: Require orderVicent Marti2013-08-132-2/+2
| |
| * windows: Missing renames.Vicent Marti2013-08-132-3/+3
| |
| * windows: Path conversion with better semanticsVicent Marti2013-08-135-43/+42
| |
| * Make utf-8 source strings unlimitedBen Straub2013-08-101-2/+2
| |
| * Fix 64-bit MSVC warningsBen Straub2013-08-101-2/+2
| |
| * Discriminate path-specific and general UTF-X conversionsBen Straub2013-08-086-26/+37
| |
| * Rename git_win_str_utf* to git_win32_path_utf*Ben Straub2013-08-075-23/+23
| |
| * Add typedefs for win32 utf-8 and utf-16 buffersBen Straub2013-08-076-40/+44
| | | | | | | | ...and normalize the signatures of the two conversion functions.
| * Split UTF-16 and UTF-8 buffer sizes for win32Ben Straub2013-08-056-44/+45
| | | | | | | | | | Also fixed up call-sites to use the correct buffer sizes, especially when converting to utf-8.
* | Fixes to safely reading the indexEdward Thomson2013-08-081-0/+5
|/ | | | | Avoid wrapping around extension size when reading, avoid walking off the end of the buffer when reading names.
* Fix compilation warningsnulltoken2013-06-291-5/+3
|
* Correctly handle junctionsSven Strickroth2013-06-251-0/+3
| | | | | | A junction has S_IFDIR | S_IFLNK set, however, only one makes sense. Signed-off-by: Sven Strickroth <email@cs-ware.de>
* Do not redefine WC_ERR_INVALID_CHARSSven Strickroth2013-06-231-0/+2
| | | | | | WC_ERR_INVALID_CHARS might be already defined by the Windows SDK. Signed-off-by: Sven Strickroth <email@cs-ware.de>
* cmake: Add option to specify the name of the binarynulltoken2013-06-131-6/+4
|
* Revert "cmake: Update Windows resources to reflect the optional vendor string"Vicent Marti2013-06-121-1/+5
| | | | This reverts commit 095bfd748766966f5515bdfe64867d6a09287123.
* Fix Windows warningsRussell Belfer2013-06-121-0/+1
| | | | | This fixes problems with missing function prototypes and 64-bit data issues on Windows.
* thread: fix segfault on Windows 64 bitsyorah2013-05-301-1/+3
| | | | | | `lpExitCode` is a pointer to a long. A long is 32 bits wide on Windows. It means that on Windows 64bits, `GetExitCodeThread()` doesn't set/clear the high-order bytes of the 64 bits memory space pointed at by `value_ptr`.
* cmake: Update Windows resources to reflect the optional vendor stringnulltoken2013-05-221-5/+1
| | | | Make InternalName and OriginalFilename resources reflect the name of the compiled binary.
* calloc() to initialize memoryLinquize2013-05-161-1/+1
|
* Fix trailing whitespacesnulltoken2013-05-152-2/+1
|
* Unify whitespaces to tabsLinquize2013-05-151-57/+57
|
* Merge pull request #1547 from ethomson/win32_statVicent Martí2013-05-061-1/+12
|\ | | | | p_stat() should follow symlinks on windows