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,9 +29,10 @@
|
|||||||
# include "win32/msvc-compat.h"
|
# include "win32/msvc-compat.h"
|
||||||
# include "win32/mingw-compat.h"
|
# include "win32/mingw-compat.h"
|
||||||
# include "win32/error.h"
|
# include "win32/error.h"
|
||||||
|
# include "win32/version.h"
|
||||||
# ifdef GIT_THREADS
|
# ifdef GIT_THREADS
|
||||||
# include "win32/pthread.h"
|
# include "win32/pthread.h"
|
||||||
#endif
|
# endif
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
@ -509,11 +509,7 @@ replay:
|
|||||||
|
|
||||||
/* Check for Windows 7. This workaround is only necessary on
|
/* Check for Windows 7. This workaround is only necessary on
|
||||||
* Windows Vista and earlier. Windows 7 is version 6.1. */
|
* Windows Vista and earlier. Windows 7 is version 6.1. */
|
||||||
DWORD dwVersion = GetVersion();
|
if (!git_has_win32_version(6, 1)) {
|
||||||
|
|
||||||
if (LOBYTE(LOWORD(dwVersion)) < 6 ||
|
|
||||||
(LOBYTE(LOWORD(dwVersion)) == 6 &&
|
|
||||||
HIBYTE(LOWORD(dwVersion)) < 1)) {
|
|
||||||
wchar_t *location;
|
wchar_t *location;
|
||||||
DWORD location_length;
|
DWORD location_length;
|
||||||
int redirect_cmp;
|
int redirect_cmp;
|
||||||
@ -991,7 +987,7 @@ static int winhttp_receivepack(
|
|||||||
{
|
{
|
||||||
/* WinHTTP only supports Transfer-Encoding: chunked
|
/* WinHTTP only supports Transfer-Encoding: chunked
|
||||||
* on Windows Vista (NT 6.0) and higher. */
|
* 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)
|
if (s->chunked)
|
||||||
s->parent.write = winhttp_stream_write_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)) {
|
(LPWSTR)&lpMsgBuf, 0, NULL)) {
|
||||||
|
|
||||||
/* Invalid code point check supported on Vista+ only */
|
/* 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;
|
dwFlags = WC_ERR_INVALID_CHARS;
|
||||||
else
|
else
|
||||||
dwFlags = 0;
|
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