diff --git a/README.md b/README.md index 1021e0e0..91cb7277 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ for more details.* * Add HTTP Host header in HttpSendRequest instead of HttpOpenRequest ([Wine Bug #28911](https://bugs.winehq.org/show_bug.cgi?id=28911)) * Add a ProfileList\ registry subkey ([Wine Bug #15670](https://bugs.winehq.org/show_bug.cgi?id=15670)) * Add implementation for CreateThreadpool ([Wine Bug #35192](https://bugs.winehq.org/show_bug.cgi?id=35192)) -* Add implementation for kernel32.GetNumaProcessorNode ([Wine Bug #38660](https://bugs.winehq.org/show_bug.cgi?id=38660)) +* ~~Add implementation for kernel32.GetNumaProcessorNode~~ ([Wine Bug #38660](https://bugs.winehq.org/show_bug.cgi?id=38660)) * Add implementation for mfplat.MFTRegister ([Wine Bug #37811](https://bugs.winehq.org/show_bug.cgi?id=37811)) * Add implementation for shlwapi.AssocGetPerceivedType * Add nvapi stubs required for GPU PhysX support @@ -281,7 +281,7 @@ for more details.* * Workaround for shlwapi URLs with relative paths * XEMBED support for embedding Wine windows inside Linux applications * eRacer Demo doesn't correctly display text ([Wine Bug #29598](https://bugs.winehq.org/show_bug.cgi?id=29598)) -* msvcrt.strtod should initialize *end with NULL on failure +* ~~msvcrt.strtod should initialize *end with NULL on failure~~ * ntdll is missing WinSqm[Start|End]Session implementation ([Wine Bug #31971](https://bugs.winehq.org/show_bug.cgi?id=31971)) * wglDescribePixelFormat should return max index for NULL descriptor ([Wine Bug #6176](https://bugs.winehq.org/show_bug.cgi?id=6176)) diff --git a/debian/changelog b/debian/changelog index a5429362..77a82c63 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +wine-staging (1.7.47) UNRELEASED; urgency=low + * Removed patch to implement kernel32.GetNumaProcessorNode (accepted + upstream). + * Removed patch to initialize *end with NULL on failure in msvcrt.strtod + (accepted upstream). + -- Sebastian Lackner Mon, 29 Jun 2015 19:39:04 +0200 + wine-staging (1.7.46) unstable; urgency=low * Add reference to upstream bug report for various patchsets. * Added patch to improve IoGetDeviceObjectPointer stub to appease SecuROM 5.x. diff --git a/patches/dbghelp-Debug_Symbols/0001-dbghelp-Always-check-for-debug-symbols-in-BINDIR.patch b/patches/dbghelp-Debug_Symbols/0001-dbghelp-Always-check-for-debug-symbols-in-BINDIR.patch index 36c9b7ee..4a37cf12 100644 --- a/patches/dbghelp-Debug_Symbols/0001-dbghelp-Always-check-for-debug-symbols-in-BINDIR.patch +++ b/patches/dbghelp-Debug_Symbols/0001-dbghelp-Always-check-for-debug-symbols-in-BINDIR.patch @@ -1,4 +1,4 @@ -From 2f02387d53e803b7347d70ef8199bdd5c0d08732 Mon Sep 17 00:00:00 2001 +From 4ecefb9629cb3121da17e7d9573c5134dcdc74c6 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Mon, 6 Oct 2014 05:06:06 +0200 Subject: dbghelp: Always check for debug symbols in BINDIR. @@ -9,7 +9,7 @@ Subject: dbghelp: Always check for debug symbols in BINDIR. 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/dlls/dbghelp/Makefile.in b/dlls/dbghelp/Makefile.in -index e5d40b1..cfb5b3e 100644 +index e483693..03248a6 100644 --- a/dlls/dbghelp/Makefile.in +++ b/dlls/dbghelp/Makefile.in @@ -1,6 +1,6 @@ @@ -19,7 +19,7 @@ index e5d40b1..cfb5b3e 100644 +EXTRADEFS = -D_IMAGEHLP_SOURCE_ -DDLLPREFIX='"$(DLLPREFIX)"' -DBINDIR="\"${bindir}\"" IMPORTS = psapi DELAYIMPORTS = version - EXTRALIBS = $(Z_LIBS) + EXTRALIBS = $(Z_LIBS) $(CORESERVICES_LIBS) $(COREFOUNDATION_LIBS) diff --git a/dlls/dbghelp/elf_module.c b/dlls/dbghelp/elf_module.c index b176143..8e22265 100644 --- a/dlls/dbghelp/elf_module.c @@ -40,5 +40,5 @@ index b176143..8e22265 100644 load_offset, dyn_addr, elf_info); } -- -2.1.2 +2.4.4 diff --git a/patches/kernel32-GetNumaProcessorNode/0001-kernel32-tests-Add-tests-for-GetNumaProcessorNode.-v.patch b/patches/kernel32-GetNumaProcessorNode/0001-kernel32-tests-Add-tests-for-GetNumaProcessorNode.-v.patch deleted file mode 100644 index ef0d2dc1..00000000 --- a/patches/kernel32-GetNumaProcessorNode/0001-kernel32-tests-Add-tests-for-GetNumaProcessorNode.-v.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 1683ee187a990a2c55cc6db9b5fac120ca1bbaca Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michael=20M=C3=BCller?= -Date: Sat, 18 Oct 2014 06:00:48 +0200 -Subject: kernel32/tests: Add tests for GetNumaProcessorNode. (v2) - -Changes in v2: - * Remove separate dlls/kernel32/tests/cpu.c file. - * Fix test failure on WinXP. ---- - dlls/kernel32/tests/process.c | 37 +++++++++++++++++++++++++++++++++++++ - 1 file changed, 37 insertions(+) - -diff --git a/dlls/kernel32/tests/process.c b/dlls/kernel32/tests/process.c -index 6660af4..b4a435b 100644 ---- a/dlls/kernel32/tests/process.c -+++ b/dlls/kernel32/tests/process.c -@@ -3,6 +3,7 @@ - * - * Copyright 2002 Eric Pouech - * Copyright 2006 Dmitry Timoshkov -+ * Copyright 2014 Michael Müller - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public -@@ -74,6 +75,7 @@ static BOOL (WINAPI *pTerminateJobObject)(HANDLE job, UINT exit_code); - static BOOL (WINAPI *pQueryInformationJobObject)(HANDLE job, JOBOBJECTINFOCLASS class, LPVOID info, DWORD len, LPDWORD ret_len); - static BOOL (WINAPI *pSetInformationJobObject)(HANDLE job, JOBOBJECTINFOCLASS class, LPVOID info, DWORD len); - static HANDLE (WINAPI *pCreateIoCompletionPort)(HANDLE file, HANDLE existing_port, ULONG_PTR key, DWORD threads); -+static BOOL (WINAPI *pGetNumaProcessorNode)(UCHAR, PUCHAR); - - /* ############################### */ - static char base[MAX_PATH]; -@@ -227,6 +229,7 @@ static BOOL init(void) - pQueryInformationJobObject = (void *)GetProcAddress(hkernel32, "QueryInformationJobObject"); - pSetInformationJobObject = (void *)GetProcAddress(hkernel32, "SetInformationJobObject"); - pCreateIoCompletionPort = (void *)GetProcAddress(hkernel32, "CreateIoCompletionPort"); -+ pGetNumaProcessorNode = (void *)GetProcAddress(hkernel32, "GetNumaProcessorNode"); - return TRUE; - } - -@@ -2692,6 +2695,39 @@ static void test_StartupNoConsole(void) - #endif - } - -+static void test_GetNumaProcessorNode(void) -+{ -+ SYSTEM_INFO si; -+ UCHAR node; -+ BOOL ret; -+ int i; -+ -+ if (!pGetNumaProcessorNode) -+ { -+ skip("GetNumaProcessorNode is missing\n"); -+ return; -+ } -+ -+ GetSystemInfo(&si); -+ for (i = 0; i < 256; i++) -+ { -+ SetLastError(0xdeadbeef); -+ node = (i < si.dwNumberOfProcessors) ? 0xFF : 0xAA; -+ ret = pGetNumaProcessorNode(i, &node); -+ if (i < si.dwNumberOfProcessors) -+ { -+ ok(ret, "GetNumaProcessorNode returned FALSE for processor %d\n", i); -+ ok(node != 0xFF, "expected node != 0xFF, but got 0xFF\n"); -+ } -+ else -+ { -+ ok(!ret, "GetNumaProcessorNode returned TRUE for processor %d\n", i); -+ ok(node == 0xFF || broken(node == 0xAA) /* WinXP */, "expected node 0xFF, got %x\n", node); -+ ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError()); -+ } -+ } -+} -+ - START_TEST(process) - { - HANDLE job; -@@ -2741,6 +2777,7 @@ START_TEST(process) - test_RegistryQuota(); - test_DuplicateHandle(); - test_StartupNoConsole(); -+ test_GetNumaProcessorNode(); - /* things that can be tested: - * lookup: check the way program to be executed is searched - * handles: check the handle inheritance stuff (+sec options) --- -2.4.3 - diff --git a/patches/kernel32-GetNumaProcessorNode/0002-kernel32-Implement-GetNumaProcessorNode.-v2.patch b/patches/kernel32-GetNumaProcessorNode/0002-kernel32-Implement-GetNumaProcessorNode.-v2.patch deleted file mode 100644 index 2d2aefea..00000000 --- a/patches/kernel32-GetNumaProcessorNode/0002-kernel32-Implement-GetNumaProcessorNode.-v2.patch +++ /dev/null @@ -1,84 +0,0 @@ -From a228108e82fd231729cc6656c443af35b4249b23 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michael=20M=C3=BCller?= -Date: Sat, 18 Oct 2014 05:57:32 +0200 -Subject: kernel32: Implement GetNumaProcessorNode. (v2) - -Changes in v2: - * Remove NULL-pointer check, it also crashes on Windows. ---- - dlls/kernel32/cpu.c | 21 +++++++++++++++++++++ - dlls/kernel32/kernel32.spec | 2 +- - dlls/kernel32/tests/process.c | 2 +- - include/winbase.h | 1 + - 4 files changed, 24 insertions(+), 2 deletions(-) - -diff --git a/dlls/kernel32/cpu.c b/dlls/kernel32/cpu.c -index f48fcf0..dc61763 100644 ---- a/dlls/kernel32/cpu.c -+++ b/dlls/kernel32/cpu.c -@@ -291,3 +291,24 @@ err: - } - return TRUE; - } -+ -+/*********************************************************************** -+ * GetNumaProcessorNode (KERNEL32.@) -+ */ -+BOOL WINAPI GetNumaProcessorNode(UCHAR processor, PUCHAR node) -+{ -+ SYSTEM_INFO si; -+ -+ TRACE( "(%d, %p)\n", processor, node ); -+ -+ GetSystemInfo(&si); -+ if (processor < si.dwNumberOfProcessors) -+ { -+ *node = 0; -+ return TRUE; -+ } -+ -+ *node = 0xFF; -+ SetLastError(ERROR_INVALID_PARAMETER); -+ return FALSE; -+} -diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec -index f9a0770..7703f2c 100644 ---- a/dlls/kernel32/kernel32.spec -+++ b/dlls/kernel32/kernel32.spec -@@ -746,7 +746,7 @@ - @ stdcall GetNumaNodeProcessorMask(long ptr) - # @ stub GetNumaNodeProcessorMaskEx - # @ stub GetNumaProcessorMap --# @ stub GetNumaProcessorNode -+@ stdcall GetNumaProcessorNode(long ptr) - # @ stub GetNumaProcessorNodeEx - # @ stub GetNumaProximityNode - # @ stub GetNumaProximityNodeEx -diff --git a/dlls/kernel32/tests/process.c b/dlls/kernel32/tests/process.c -index b4a435b..4145dce 100644 ---- a/dlls/kernel32/tests/process.c -+++ b/dlls/kernel32/tests/process.c -@@ -2704,7 +2704,7 @@ static void test_GetNumaProcessorNode(void) - - if (!pGetNumaProcessorNode) - { -- skip("GetNumaProcessorNode is missing\n"); -+ win_skip("GetNumaProcessorNode is missing\n"); - return; - } - -diff --git a/include/winbase.h b/include/winbase.h -index cc1081e..f3249a7 100644 ---- a/include/winbase.h -+++ b/include/winbase.h -@@ -2052,6 +2052,7 @@ WINBASEAPI BOOL WINAPI GetNamedPipeHandleStateW(HANDLE,LPDWORD,LPDWORD,LP - #define GetNamedPipeHandleState WINELIB_NAME_AW(GetNamedPipeHandleState) - WINBASEAPI BOOL WINAPI GetNamedPipeInfo(HANDLE,LPDWORD,LPDWORD,LPDWORD,LPDWORD); - WINBASEAPI VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO); -+WINBASEAPI BOOL WINAPI GetNumaProcessorNode(UCHAR, PUCHAR); - WINADVAPI BOOL WINAPI GetNumberOfEventLogRecords(HANDLE,PDWORD); - WINADVAPI BOOL WINAPI GetOldestEventLogRecord(HANDLE,PDWORD); - WINBASEAPI BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,LPDWORD,BOOL); --- -2.4.3 - diff --git a/patches/kernel32-GetNumaProcessorNode/definition b/patches/kernel32-GetNumaProcessorNode/definition deleted file mode 100644 index dc42d1b6..00000000 --- a/patches/kernel32-GetNumaProcessorNode/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [38660] Add implementation for kernel32.GetNumaProcessorNode diff --git a/patches/msvcrt-atof_strtod/0001-msvcrt-Avoid-crash-when-NULL-pointer-is-passed-to-at.patch b/patches/msvcrt-atof_strtod/0001-msvcrt-Avoid-crash-when-NULL-pointer-is-passed-to-at.patch deleted file mode 100644 index 83e1087a..00000000 --- a/patches/msvcrt-atof_strtod/0001-msvcrt-Avoid-crash-when-NULL-pointer-is-passed-to-at.patch +++ /dev/null @@ -1,109 +0,0 @@ -From 5464947ce0bbc3f0da79231c5e366cd54d7888d1 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michael=20M=C3=BCller?= -Date: Sat, 8 Nov 2014 22:39:28 +0100 -Subject: msvcrt: Avoid crash when NULL pointer is passed to atof / strtod - functions. - ---- - dlls/msvcrt/tests/string.c | 57 ++++++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 57 insertions(+) - -diff --git a/dlls/msvcrt/tests/string.c b/dlls/msvcrt/tests/string.c -index 9920df0..1a3c598 100644 ---- a/dlls/msvcrt/tests/string.c -+++ b/dlls/msvcrt/tests/string.c -@@ -89,6 +89,8 @@ static int (__cdecl *p_tolower)(int); - static size_t (__cdecl *p_mbrlen)(const char*, size_t, mbstate_t*); - static size_t (__cdecl *p_mbrtowc)(wchar_t*, const char*, size_t, mbstate_t*); - static int (__cdecl *p__atodbl_l)(_CRT_DOUBLE*,char*,_locale_t); -+static double (__cdecl *p__atof_l)(const char*,_locale_t); -+static double (__cdecl *p__strtod_l)(const char *,char**,_locale_t); - static int (__cdecl *p__strnset_s)(char*,size_t,int,size_t); - static int (__cdecl *p__wcsset_s)(wchar_t*,size_t,wchar_t); - -@@ -1678,6 +1680,28 @@ static void test__strtod(void) - ok(almost_equal(d, 0), "d = %lf\n", d); - ok(end == white_chars, "incorrect end (%d)\n", (int)(end-white_chars)); - -+ if (!p__strtod_l) -+ win_skip("_strtod_l not found\n"); -+ else -+ { -+ errno = EBADF; -+ d = strtod(NULL, NULL); -+ ok(almost_equal(d, 0.0), "d = %lf\n", d); -+ ok(errno == EINVAL, "errno = %x\n", errno); -+ -+ errno = EBADF; -+ end = (char *)0xdeadbeef; -+ d = strtod(NULL, &end); -+ ok(almost_equal(d, 0.0), "d = %lf\n", d); -+ ok(errno == EINVAL, "errno = %x\n", errno); -+ todo_wine ok(!end, "incorrect end ptr %p\n", end); -+ -+ errno = EBADF; -+ d = p__strtod_l(NULL, NULL, NULL); -+ ok(almost_equal(d, 0.0), "d = %lf\n", d); -+ ok(errno == EINVAL, "errno = %x\n", errno); -+ } -+ - /* Set locale with non '.' decimal point (',') */ - if(!setlocale(LC_ALL, "Polish")) { - win_skip("system with limited locales\n"); -@@ -2721,6 +2745,36 @@ static void test_atoi(void) - ok(r == 0, "atoi(4294967296) = %d\n", r); - } - -+static void test_atof(void) -+{ -+ double d; -+ -+ d = atof("0.0"); -+ ok(almost_equal(d, 0.0), "d = %lf\n", d); -+ -+ d = atof("1.0"); -+ ok(almost_equal(d, 1.0), "d = %lf\n", d); -+ -+ d = atof("-1.0"); -+ ok(almost_equal(d, -1.0), "d = %lf\n", d); -+ -+ if (!p__atof_l) -+ { -+ win_skip("_atof_l not found\n"); -+ return; -+ } -+ -+ errno = EBADF; -+ d = atof(NULL); -+ ok(almost_equal(d, 0.0), "d = %lf\n", d); -+ ok(errno == EINVAL, "errno = %x\n", errno); -+ -+ errno = EBADF; -+ d = p__atof_l(NULL, NULL); -+ ok(almost_equal(d, 0.0), "d = %lf\n", d); -+ ok(errno == EINVAL, "errno = %x\n", errno); -+} -+ - static void test_strncpy(void) - { - #define TEST_STRNCPY_LEN 10 -@@ -2959,6 +3013,8 @@ START_TEST(string) - p_mbrtowc = (void*)GetProcAddress(hMsvcrt, "mbrtowc"); - p_mbsrtowcs = (void*)GetProcAddress(hMsvcrt, "mbsrtowcs"); - p__atodbl_l = (void*)GetProcAddress(hMsvcrt, "_atodbl_l"); -+ p__atof_l = (void*)GetProcAddress(hMsvcrt, "_atof_l"); -+ p__strtod_l = (void*)GetProcAddress(hMsvcrt, "_strtod_l"); - p__strnset_s = (void*)GetProcAddress(hMsvcrt, "_strnset_s"); - p__wcsset_s = (void*)GetProcAddress(hMsvcrt, "_wcsset_s"); - -@@ -3015,6 +3071,7 @@ START_TEST(string) - test__stricmp(); - test__wcstoi64(); - test_atoi(); -+ test_atof(); - test_strncpy(); - test_strxfrm(); - test__strnset_s(); --- -2.4.3 - diff --git a/patches/msvcrt-atof_strtod/0002-msvcrt-Set-end-to-NULL-when-strtod-is-called-with-NU.patch b/patches/msvcrt-atof_strtod/0002-msvcrt-Set-end-to-NULL-when-strtod-is-called-with-NU.patch deleted file mode 100644 index 2ec5dad2..00000000 --- a/patches/msvcrt-atof_strtod/0002-msvcrt-Set-end-to-NULL-when-strtod-is-called-with-NU.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 826e80ab90bc03c4e156f3600ae8078b3c75e3ed Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Fri, 26 Jun 2015 10:35:50 +0200 -Subject: msvcrt: Set *end to NULL when strtod is called with NULL pointer - string. - ---- - dlls/msvcrt/string.c | 7 +++++-- - dlls/msvcrt/tests/string.c | 2 +- - 2 files changed, 6 insertions(+), 3 deletions(-) - -diff --git a/dlls/msvcrt/string.c b/dlls/msvcrt/string.c -index fdeb4e0..980d492 100644 ---- a/dlls/msvcrt/string.c -+++ b/dlls/msvcrt/string.c -@@ -317,8 +317,11 @@ static double strtod_helper(const char *str, char **end, MSVCRT__locale_t locale - - if(err) - *err = 0; -- else -- if(!MSVCRT_CHECK_PMT(str != NULL)) return 0; -+ else if(!MSVCRT_CHECK_PMT(str != NULL)) { -+ if (end) -+ *end = NULL; -+ return 0; -+ } - - if(!locale) - locinfo = get_locinfo(); -diff --git a/dlls/msvcrt/tests/string.c b/dlls/msvcrt/tests/string.c -index 1a3c598..83de762 100644 ---- a/dlls/msvcrt/tests/string.c -+++ b/dlls/msvcrt/tests/string.c -@@ -1694,7 +1694,7 @@ static void test__strtod(void) - d = strtod(NULL, &end); - ok(almost_equal(d, 0.0), "d = %lf\n", d); - ok(errno == EINVAL, "errno = %x\n", errno); -- todo_wine ok(!end, "incorrect end ptr %p\n", end); -+ ok(!end, "incorrect end ptr %p\n", end); - - errno = EBADF; - d = p__strtod_l(NULL, NULL, NULL); --- -2.4.3 - diff --git a/patches/msvcrt-atof_strtod/definition b/patches/msvcrt-atof_strtod/definition deleted file mode 100644 index b92a7784..00000000 --- a/patches/msvcrt-atof_strtod/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: msvcrt.strtod should initialize *end with NULL on failure diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 6c2f22a7..d9ed0ffd 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,11 +51,11 @@ usage() # Show version information version() { - echo "Wine Staging 1.7.46" + echo "Wine Staging 1.7.47 (unreleased)" echo "Copyright (C) 2014-2015 the Wine Staging project authors." echo "" echo "Patchset to be applied on upstream Wine:" - echo " commit ae6efa469bfaecade30e160d195d607bdcdcc6ae" + echo " commit 9353a36d8fc8bb400bc2227914db0f2e60a19c24" echo "" } @@ -132,7 +132,6 @@ patch_enable_all () enable_kernel32_CopyFileEx="$1" enable_kernel32_GetFinalPathNameByHandle="$1" enable_kernel32_GetLogicalProcessorInformationEx="$1" - enable_kernel32_GetNumaProcessorNode="$1" enable_kernel32_InsertMode="$1" enable_kernel32_Named_Pipe="$1" enable_kernel32_NeedCurrentDirectoryForExePath="$1" @@ -149,7 +148,6 @@ patch_enable_all () enable_mscoree_CorValidateImage="$1" enable_msvcp90_basic_string_dtor="$1" enable_msvcrt_Math_Precision="$1" - enable_msvcrt_atof_strtod="$1" enable_msvfw32_Image_Size="$1" enable_ntdll_APC_Performance="$1" enable_ntdll_APC_Start_Process="$1" @@ -472,9 +470,6 @@ patch_enable () kernel32-GetLogicalProcessorInformationEx) enable_kernel32_GetLogicalProcessorInformationEx="$2" ;; - kernel32-GetNumaProcessorNode) - enable_kernel32_GetNumaProcessorNode="$2" - ;; kernel32-InsertMode) enable_kernel32_InsertMode="$2" ;; @@ -523,9 +518,6 @@ patch_enable () msvcrt-Math_Precision) enable_msvcrt_Math_Precision="$2" ;; - msvcrt-atof_strtod) - enable_msvcrt_atof_strtod="$2" - ;; msvfw32-Image_Size) enable_msvfw32_Image_Size="$2" ;; @@ -3001,23 +2993,6 @@ if test "$enable_kernel32_GetLogicalProcessorInformationEx" -eq 1; then ) >> "$patchlist" fi -# Patchset kernel32-GetNumaProcessorNode -# | -# | This patchset fixes the following Wine bugs: -# | * [#38660] Add implementation for kernel32.GetNumaProcessorNode -# | -# | Modified files: -# | * dlls/kernel32/cpu.c, dlls/kernel32/kernel32.spec, dlls/kernel32/tests/process.c, include/winbase.h -# | -if test "$enable_kernel32_GetNumaProcessorNode" -eq 1; then - patch_apply kernel32-GetNumaProcessorNode/0001-kernel32-tests-Add-tests-for-GetNumaProcessorNode.-v.patch - patch_apply kernel32-GetNumaProcessorNode/0002-kernel32-Implement-GetNumaProcessorNode.-v2.patch - ( - echo '+ { "Michael Müller", "kernel32/tests: Add tests for GetNumaProcessorNode.", 2 },'; - echo '+ { "Michael Müller", "kernel32: Implement GetNumaProcessorNode.", 2 },'; - ) >> "$patchlist" -fi - # Patchset kernel32-InsertMode # | # | Modified files: @@ -3303,20 +3278,6 @@ if test "$enable_msvcrt_Math_Precision" -eq 1; then ) >> "$patchlist" fi -# Patchset msvcrt-atof_strtod -# | -# | Modified files: -# | * dlls/msvcrt/string.c, dlls/msvcrt/tests/string.c -# | -if test "$enable_msvcrt_atof_strtod" -eq 1; then - patch_apply msvcrt-atof_strtod/0001-msvcrt-Avoid-crash-when-NULL-pointer-is-passed-to-at.patch - patch_apply msvcrt-atof_strtod/0002-msvcrt-Set-end-to-NULL-when-strtod-is-called-with-NU.patch - ( - echo '+ { "Michael Müller", "msvcrt: Avoid crash when NULL pointer is passed to atof / strtod functions.", 1 },'; - echo '+ { "Sebastian Lackner", "msvcrt: Set *end to NULL when strtod is called with NULL pointer string.", 1 },'; - ) >> "$patchlist" -fi - # Patchset msvfw32-Image_Size # | # | This patchset fixes the following Wine bugs: