mirror of
https://git.proxmox.com/git/libgit2
synced 2025-05-21 12:24:58 +00:00
Add git_has_win32_version helper
This commit is contained in:
parent
8cc2f2d86f
commit
5c5eeba6fd
@ -29,6 +29,7 @@
|
||||
# include "win32/msvc-compat.h"
|
||||
# include "win32/mingw-compat.h"
|
||||
# include "win32/error.h"
|
||||
# include "win32/version.h"
|
||||
# ifdef GIT_THREADS
|
||||
# include "win32/pthread.h"
|
||||
# endif
|
||||
|
@ -509,11 +509,7 @@ replay:
|
||||
|
||||
/* Check for Windows 7. This workaround is only necessary on
|
||||
* Windows Vista and earlier. Windows 7 is version 6.1. */
|
||||
DWORD dwVersion = GetVersion();
|
||||
|
||||
if (LOBYTE(LOWORD(dwVersion)) < 6 ||
|
||||
(LOBYTE(LOWORD(dwVersion)) == 6 &&
|
||||
HIBYTE(LOWORD(dwVersion)) < 1)) {
|
||||
if (!git_has_win32_version(6, 1)) {
|
||||
wchar_t *location;
|
||||
DWORD location_length;
|
||||
int redirect_cmp;
|
||||
@ -991,7 +987,7 @@ static int winhttp_receivepack(
|
||||
{
|
||||
/* WinHTTP only supports Transfer-Encoding: chunked
|
||||
* on Windows Vista (NT 6.0) and higher. */
|
||||
s->chunked = LOBYTE(LOWORD(GetVersion())) >= 6;
|
||||
s->chunked = git_has_win32_version(6, 0);
|
||||
|
||||
if (s->chunked)
|
||||
s->parent.write = winhttp_stream_write_chunked;
|
||||
|
@ -45,7 +45,7 @@ char *git_win32_get_error_message(DWORD error_code)
|
||||
(LPWSTR)&lpMsgBuf, 0, NULL)) {
|
||||
|
||||
/* Invalid code point check supported on Vista+ only */
|
||||
if (LOBYTE(LOWORD(GetVersion())) >= 6)
|
||||
if (git_has_win32_version(6, 0))
|
||||
dwFlags = WC_ERR_INVALID_CHARS;
|
||||
else
|
||||
dwFlags = 0;
|
||||
|
20
src/win32/version.h
Normal file
20
src/win32/version.h
Normal file
@ -0,0 +1,20 @@
|
||||
/*
|
||||
* Copyright (C) the libgit2 contributors. All rights reserved.
|
||||
*
|
||||
* This file is part of libgit2, distributed under the GNU GPL v2 with
|
||||
* a Linking Exception. For full terms see the included COPYING file.
|
||||
*/
|
||||
#ifndef INCLUDE_win32_version_h__
|
||||
#define INCLUDE_win32_version_h__
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
GIT_INLINE(int) git_has_win32_version(int major, int minor)
|
||||
{
|
||||
WORD wVersion = LOWORD(GetVersion());
|
||||
|
||||
return LOBYTE(wVersion) > major ||
|
||||
(LOBYTE(wVersion) == major && HIBYTE(wVersion) >= minor);
|
||||
}
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user