diff --git a/patches/gdi32-Path_Metafile/0001-gdi32-tests-Add-some-additional-tests-for-ExtExtOut-.patch b/patches/gdi32-Path_Metafile/0001-gdi32-tests-Add-some-additional-tests-for-ExtExtOut-.patch deleted file mode 100644 index 41f776bf..00000000 --- a/patches/gdi32-Path_Metafile/0001-gdi32-tests-Add-some-additional-tests-for-ExtExtOut-.patch +++ /dev/null @@ -1,170 +0,0 @@ -From 49a870429b6f911dccca036e9622497074c6b6bb Mon Sep 17 00:00:00 2001 -From: Dmitry Timoshkov -Date: Sat, 20 Feb 2016 15:21:00 +0800 -Subject: gdi32/tests: Add some additional tests for ExtExtOut on a path for an - EMF DC. (v2) - ---- - dlls/gdi32/tests/metafile.c | 118 ++++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 118 insertions(+) - -diff --git a/dlls/gdi32/tests/metafile.c b/dlls/gdi32/tests/metafile.c -index bcd085c..baeaa63 100644 ---- a/dlls/gdi32/tests/metafile.c -+++ b/dlls/gdi32/tests/metafile.c -@@ -1122,6 +1122,44 @@ static const unsigned char EMF_TEXTOUT_ON_PATH_BITS[] = - 0x14, 0x00, 0x00, 0x00 - }; - -+static const unsigned char EMF_TEXTOUT_OUTLINE_ON_PATH_BITS[] = -+{ -+ 0x01, 0x00, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x00, -+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, -+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -+ 0xdd, 0xff, 0xff, 0xff, 0xdd, 0xff, 0xff, 0xff, -+ 0x20, 0x45, 0x4d, 0x46, 0x00, 0x00, 0x01, 0x00, -+ 0x0c, 0x01, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, -+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -+ 0x90, 0x06, 0x00, 0x00, 0x1a, 0x04, 0x00, 0x00, -+ 0x51, 0x02, 0x00, 0x00, 0x72, 0x01, 0x00, 0x00, -+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -+ 0x00, 0x00, 0x00, 0x00, 0x1a, 0x0b, 0x09, 0x00, -+ 0xf0, 0xa6, 0x05, 0x00, 0x25, 0x00, 0x00, 0x00, -+ 0x0c, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x80, -+ 0x3b, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, -+ 0x54, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, -+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, -+ 0x01, 0x00, 0x00, 0x00, 0xc3, 0x30, 0x0d, 0x42, -+ 0xcf, 0xf3, 0x0c, 0x42, 0x0b, 0x00, 0x00, 0x00, -+ 0x16, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, -+ 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, -+ 0x54, 0x00, 0x00, 0x00, 0x54, 0x00, 0x65, 0x00, -+ 0x73, 0x00, 0x74, 0x00, 0x03, 0x00, 0x00, 0x00, -+ 0x05, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, -+ 0x0c, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00, -+ 0x08, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, -+ 0x0c, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x80, -+ 0x0e, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, -+ 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, -+ 0x14, 0x00, 0x00, 0x00 -+}; -+ - static const unsigned char MF_LINETO_BITS[] = { - 0x01, 0x00, 0x09, 0x00, 0x00, 0x03, 0x11, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, -@@ -2384,6 +2422,8 @@ static void test_emf_ExtTextOut_on_path(void) - HDC hdcDisplay, hdcMetafile; - HENHMETAFILE hMetafile; - BOOL ret; -+ LOGFONTA lf; -+ HFONT hFont; - static const INT dx[4] = { 3, 5, 8, 12 }; - - /* Win9x doesn't play EMFs on invisible windows */ -@@ -2394,6 +2434,20 @@ static void test_emf_ExtTextOut_on_path(void) - hdcDisplay = GetDC(hwnd); - ok(hdcDisplay != 0, "GetDC error %d\n", GetLastError()); - -+ /* with default font */ -+ ret = BeginPath(hdcDisplay); -+ ok(ret, "BeginPath error %d\n", GetLastError()); -+ -+ ret = ExtTextOutA(hdcDisplay, 11, 22, 0, NULL, "Test", 4, dx); -+todo_wine -+ ok(ret, "ExtTextOut error %d\n", GetLastError()); -+ -+ ret = EndPath(hdcDisplay); -+ ok(ret, "EndPath error %d\n", GetLastError()); -+ -+ ret = GetPath(hdcDisplay, NULL, NULL, 0); -+ ok(!ret, "expected 0, got %d\n", ret); -+ - hdcMetafile = CreateEnhMetaFileA(hdcDisplay, NULL, NULL, NULL); - ok(hdcMetafile != 0, "CreateEnhMetaFileA error %d\n", GetLastError()); - -@@ -2406,6 +2460,9 @@ static void test_emf_ExtTextOut_on_path(void) - ret = EndPath(hdcMetafile); - ok(ret, "EndPath error %d\n", GetLastError()); - -+ ret = GetPath(hdcMetafile, NULL, NULL, 0); -+ ok(!ret, "expected 0, got %d\n", ret); -+ - hMetafile = CloseEnhMetaFile(hdcMetafile); - ok(hMetafile != 0, "CloseEnhMetaFile error %d\n", GetLastError()); - -@@ -2421,6 +2478,67 @@ static void test_emf_ExtTextOut_on_path(void) - - ret = DeleteEnhMetaFile(hMetafile); - ok(ret, "DeleteEnhMetaFile error %d\n", GetLastError()); -+ -+ /* with outline font */ -+ memset(&lf, 0, sizeof(lf)); -+ lf.lfCharSet = ANSI_CHARSET; -+ lf.lfClipPrecision = CLIP_DEFAULT_PRECIS; -+ lf.lfWeight = FW_DONTCARE; -+ lf.lfHeight = 7; -+ lf.lfQuality = DEFAULT_QUALITY; -+ lstrcpyA(lf.lfFaceName, "Tahoma"); -+ hFont = CreateFontIndirectA(&lf); -+ ok(hFont != 0, "CreateFontIndirectA error %d\n", GetLastError()); -+ hFont = SelectObject(hdcDisplay, hFont); -+ -+ ret = BeginPath(hdcDisplay); -+ ok(ret, "BeginPath error %d\n", GetLastError()); -+ -+ ret = ExtTextOutA(hdcDisplay, 11, 22, 0, NULL, "Test", 4, dx); -+ ok(ret, "ExtTextOut error %d\n", GetLastError()); -+ -+ ret = EndPath(hdcDisplay); -+ ok(ret, "EndPath error %d\n", GetLastError()); -+ -+ ret = GetPath(hdcDisplay, NULL, NULL, 0); -+ ok(ret != 0, "expected != 0\n"); -+ -+ SelectObject(hdcDisplay, hFont); -+ -+ hdcMetafile = CreateEnhMetaFileA(hdcDisplay, NULL, NULL, NULL); -+ ok(hdcMetafile != 0, "CreateEnhMetaFileA error %d\n", GetLastError()); -+ -+ hFont = SelectObject(hdcMetafile, hFont); -+ -+ ret = BeginPath(hdcMetafile); -+ ok(ret, "BeginPath error %d\n", GetLastError()); -+ -+ ret = ExtTextOutA(hdcMetafile, 11, 22, 0, NULL, "Test", 4, dx); -+todo_wine -+ ok(ret, "ExtTextOut error %d\n", GetLastError()); -+ -+ ret = EndPath(hdcMetafile); -+ ok(ret, "EndPath error %d\n", GetLastError()); -+ -+ ret = GetPath(hdcMetafile, NULL, NULL, 0); -+ ok(!ret, "expected 0, got %d\n", ret); -+ -+ hFont = SelectObject(hdcMetafile, hFont); -+ DeleteObject(hFont); -+ -+ hMetafile = CloseEnhMetaFile(hdcMetafile); -+ ok(hMetafile != 0, "CloseEnhMetaFile error %d\n", GetLastError()); -+ -+ if (compare_emf_bits(hMetafile, EMF_TEXTOUT_OUTLINE_ON_PATH_BITS, sizeof(EMF_TEXTOUT_OUTLINE_ON_PATH_BITS), -+ "emf_TextOut_on_path", FALSE) != 0) -+ { -+ dump_emf_bits(hMetafile, "emf_TextOut_outline_on_path"); -+ dump_emf_records(hMetafile, "emf_TextOut_outline_on_path"); -+ } -+ -+ ret = DeleteEnhMetaFile(hMetafile); -+ ok(ret, "DeleteEnhMetaFile error %d\n", GetLastError()); -+ - ret = ReleaseDC(hwnd, hdcDisplay); - ok(ret, "ReleaseDC error %d\n", GetLastError()); - DestroyWindow(hwnd); --- -2.8.0 - diff --git a/patches/gdi32-Path_Metafile/0002-gdi32-ExtTextOut-on-a-path-with-bitmap-font-selected.patch b/patches/gdi32-Path_Metafile/0002-gdi32-ExtTextOut-on-a-path-with-bitmap-font-selected.patch deleted file mode 100644 index cb619dc1..00000000 --- a/patches/gdi32-Path_Metafile/0002-gdi32-ExtTextOut-on-a-path-with-bitmap-font-selected.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 9d6023646b9d6ee4958d2de3a35d300f2f349ea2 Mon Sep 17 00:00:00 2001 -From: Dmitry Timoshkov -Date: Sat, 20 Feb 2016 15:28:36 +0800 -Subject: gdi32: ExtTextOut on a path with bitmap font selected shouldn't fail. - -This just leads to empty path generated. ---- - dlls/gdi32/path.c | 2 +- - dlls/gdi32/tests/metafile.c | 4 +--- - 2 files changed, 2 insertions(+), 4 deletions(-) - -diff --git a/dlls/gdi32/path.c b/dlls/gdi32/path.c -index c6b87d4..9b8c9db 100644 ---- a/dlls/gdi32/path.c -+++ b/dlls/gdi32/path.c -@@ -1481,7 +1481,7 @@ static BOOL pathdrv_ExtTextOut( PHYSDEV dev, INT x, INT y, UINT flags, const REC - void *outline; - - dwSize = GetGlyphOutlineW(dev->hdc, str[idx], ggo_flags, &gm, 0, NULL, &identity); -- if (dwSize == GDI_ERROR) return FALSE; -+ if (dwSize == GDI_ERROR) continue; - - /* add outline only if char is printable */ - if(dwSize) -diff --git a/dlls/gdi32/tests/metafile.c b/dlls/gdi32/tests/metafile.c -index baeaa63..9d01ba8 100644 ---- a/dlls/gdi32/tests/metafile.c -+++ b/dlls/gdi32/tests/metafile.c -@@ -2439,7 +2439,6 @@ static void test_emf_ExtTextOut_on_path(void) - ok(ret, "BeginPath error %d\n", GetLastError()); - - ret = ExtTextOutA(hdcDisplay, 11, 22, 0, NULL, "Test", 4, dx); --todo_wine - ok(ret, "ExtTextOut error %d\n", GetLastError()); - - ret = EndPath(hdcDisplay); -@@ -2455,7 +2454,7 @@ todo_wine - ok(ret, "BeginPath error %d\n", GetLastError()); - - ret = ExtTextOutA(hdcMetafile, 11, 22, 0, NULL, "Test", 4, dx); -- todo_wine ok(ret, "ExtTextOut error %d\n", GetLastError()); -+ ok(ret, "ExtTextOut error %d\n", GetLastError()); - - ret = EndPath(hdcMetafile); - ok(ret, "EndPath error %d\n", GetLastError()); -@@ -2514,7 +2513,6 @@ todo_wine - ok(ret, "BeginPath error %d\n", GetLastError()); - - ret = ExtTextOutA(hdcMetafile, 11, 22, 0, NULL, "Test", 4, dx); --todo_wine - ok(ret, "ExtTextOut error %d\n", GetLastError()); - - ret = EndPath(hdcMetafile); --- -2.8.0 - diff --git a/patches/gdi32-Path_Metafile/0003-gdi32-tests-Explicitly-test-BeginPath-return-value-i.patch b/patches/gdi32-Path_Metafile/0003-gdi32-tests-Explicitly-test-BeginPath-return-value-i.patch deleted file mode 100644 index 09cd602d..00000000 --- a/patches/gdi32-Path_Metafile/0003-gdi32-tests-Explicitly-test-BeginPath-return-value-i.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 74903a2f465f98862457553f9d921db857a824ae Mon Sep 17 00:00:00 2001 -From: Dmitry Timoshkov -Date: Wed, 24 Feb 2016 11:58:41 +0800 -Subject: gdi32/tests: Explicitly test BeginPath() return value in the metafile - path tests. - ---- - dlls/gdi32/tests/metafile.c | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git a/dlls/gdi32/tests/metafile.c b/dlls/gdi32/tests/metafile.c -index 9d01ba8..7781013 100644 ---- a/dlls/gdi32/tests/metafile.c -+++ b/dlls/gdi32/tests/metafile.c -@@ -2950,7 +2950,8 @@ static void test_mf_GetPath(void) - hdc = CreateMetaFileA(NULL); - ok(hdc != 0, "CreateMetaFileA error %d\n", GetLastError()); - -- BeginPath(hdc); -+ ret = BeginPath(hdc); -+ ok(!ret, "BeginPath on metafile DC should fail\n"); - ret = MoveToEx(hdc, 50, 50, NULL); - ok( ret, "MoveToEx error %d.\n", GetLastError()); - ret = LineTo(hdc, 50, 150); -@@ -3839,7 +3840,8 @@ static void test_emf_paths(void) - hdcMetafile = CreateEnhMetaFileA(GetDC(0), NULL, NULL, NULL); - ok(hdcMetafile != 0, "CreateEnhMetaFileA error %d\n", GetLastError()); - -- BeginPath(hdcMetafile); -+ ret = BeginPath(hdcMetafile); -+ ok(ret, "BeginPath error %d\n", GetLastError()); - ret = MoveToEx(hdcMetafile, 50, 50, NULL); - ok( ret, "MoveToEx error %d.\n", GetLastError()); - ret = LineTo(hdcMetafile, 50, 150); --- -2.8.0 - diff --git a/patches/gdi32-Symbol_Truetype_Font/0001-gdi32-Improve-detection-of-symbol-charset-for-old-tr.patch b/patches/gdi32-Symbol_Truetype_Font/0001-gdi32-Improve-detection-of-symbol-charset-for-old-tr.patch deleted file mode 100644 index 2b62c7c2..00000000 --- a/patches/gdi32-Symbol_Truetype_Font/0001-gdi32-Improve-detection-of-symbol-charset-for-old-tr.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 256b632c53c263a4ebcb37ba7d103d5d37e4d0dc Mon Sep 17 00:00:00 2001 -From: Dmitry Timoshkov -Date: Wed, 18 Nov 2015 14:16:36 +0800 -Subject: gdi32: Improve detection of symbol charset for old truetype fonts. - -This patch uses same check for symbol charset that get_outline_text_metrics() -already does, and allows the font attached to the bug 33117 be correctly -recognized as a symbol ttf (like Windows does). - -Signed-off-by: Dmitry Timoshkov ---- - dlls/gdi32/freetype.c | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - -diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c -index 693a54d..a6c8097 100644 ---- a/dlls/gdi32/freetype.c -+++ b/dlls/gdi32/freetype.c -@@ -1980,7 +1980,6 @@ static inline void get_bitmap_size( FT_Face ft_face, Bitmap_Size *face_size ) - static inline void get_fontsig( FT_Face ft_face, FONTSIGNATURE *fs ) - { - TT_OS2 *os2; -- FT_UInt dummy; - CHARSETINFO csi; - FT_WinFNT_HeaderRec winfnt_header; - int i; -@@ -1997,10 +1996,10 @@ static inline void get_fontsig( FT_Face ft_face, FONTSIGNATURE *fs ) - - if (os2->version == 0) - { -- if (pFT_Get_First_Char( ft_face, &dummy ) < 0x100) -- fs->fsCsb[0] = FS_LATIN1; -- else -+ if (os2->usFirstCharIndex >= 0xf000 && os2->usFirstCharIndex < 0xf100) - fs->fsCsb[0] = FS_SYMBOL; -+ else -+ fs->fsCsb[0] = FS_LATIN1; - } - else - { --- -2.6.2 - diff --git a/patches/gdi32-Symbol_Truetype_Font/definition b/patches/gdi32-Symbol_Truetype_Font/definition deleted file mode 100644 index cea2baf4..00000000 --- a/patches/gdi32-Symbol_Truetype_Font/definition +++ /dev/null @@ -1 +0,0 @@ -Fixes: [33117] Improve detection of symbol charset for old truetype fonts diff --git a/patches/loader-OSX_Preloader/0001-libs-wine-Do-not-restrict-base-address-of-main-threa.patch b/patches/loader-OSX_Preloader/0001-libs-wine-Do-not-restrict-base-address-of-main-threa.patch deleted file mode 100644 index 1084c910..00000000 --- a/patches/loader-OSX_Preloader/0001-libs-wine-Do-not-restrict-base-address-of-main-threa.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 3174d46a02a1112d2f31a16ad895731fbbaddf21 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michael=20M=C3=BCller?= -Date: Mon, 12 Jun 2017 00:18:37 +0200 -Subject: libs/wine: Do not restrict base address of main thread on 64 bit mac - os. - ---- - libs/wine/loader.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/libs/wine/loader.c b/libs/wine/loader.c -index e362a1d1939..5f37dc978ba 100644 ---- a/libs/wine/loader.c -+++ b/libs/wine/loader.c -@@ -700,6 +700,7 @@ struct apple_stack_info - * Callback for wine_mmap_enum_reserved_areas to allocate space for - * the secondary thread's stack. - */ -+#ifndef _WIN64 - static int apple_alloc_thread_stack( void *base, size_t size, void *arg ) - { - struct apple_stack_info *info = arg; -@@ -716,6 +717,7 @@ static int apple_alloc_thread_stack( void *base, size_t size, void *arg ) - info->desired_size, PROT_READ|PROT_WRITE, MAP_FIXED ); - return (info->stack != (void *)-1); - } -+#endif - - /*********************************************************************** - * apple_create_wine_thread -@@ -733,6 +735,7 @@ static void apple_create_wine_thread( void *init_func ) - - if (!pthread_attr_init( &attr )) - { -+#ifndef _WIN64 - struct apple_stack_info info; - - /* Try to put the new thread's stack in the reserved area. If this -@@ -744,6 +747,7 @@ static void apple_create_wine_thread( void *init_func ) - wine_mmap_remove_reserved_area( info.stack, info.desired_size, 0 ); - pthread_attr_setstackaddr( &attr, (char*)info.stack + info.desired_size ); - } -+#endif - - if (!pthread_attr_setdetachstate( &attr, PTHREAD_CREATE_JOINABLE ) && - !pthread_create( &thread, &attr, init_func, NULL )) --- -2.13.1 - diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index e6d62eff..08502dd0 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -52,7 +52,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "1582ae6b045bb1658f6d5bc83efc5f6ce042c06e" + echo "20e5920135476cc4e380823a694537fca7fdf7e1" } # Show version information @@ -146,8 +146,6 @@ patch_enable_all () enable_fsutil_Stub_Program="$1" enable_gdi32_Lazy_Font_Initialization="$1" enable_gdi32_MultiMonitor="$1" - enable_gdi32_Path_Metafile="$1" - enable_gdi32_Symbol_Truetype_Font="$1" enable_gdiplus_Performance_Improvements="$1" enable_hid_HidD_FlushQueue="$1" enable_imagehlp_BindImageEx="$1" @@ -597,12 +595,6 @@ patch_enable () gdi32-MultiMonitor) enable_gdi32_MultiMonitor="$2" ;; - gdi32-Path_Metafile) - enable_gdi32_Path_Metafile="$2" - ;; - gdi32-Symbol_Truetype_Font) - enable_gdi32_Symbol_Truetype_Font="$2" - ;; gdiplus-Performance-Improvements) enable_gdiplus_Performance_Improvements="$2" ;; @@ -3618,37 +3610,6 @@ if test "$enable_gdi32_MultiMonitor" -eq 1; then ) >> "$patchlist" fi -# Patchset gdi32-Path_Metafile -# | -# | Modified files: -# | * dlls/gdi32/path.c, dlls/gdi32/tests/metafile.c -# | -if test "$enable_gdi32_Path_Metafile" -eq 1; then - patch_apply gdi32-Path_Metafile/0001-gdi32-tests-Add-some-additional-tests-for-ExtExtOut-.patch - patch_apply gdi32-Path_Metafile/0002-gdi32-ExtTextOut-on-a-path-with-bitmap-font-selected.patch - patch_apply gdi32-Path_Metafile/0003-gdi32-tests-Explicitly-test-BeginPath-return-value-i.patch - ( - printf '%s\n' '+ { "Dmitry Timoshkov", "gdi32/tests: Add some additional tests for ExtExtOut on a path for an EMF DC.", 2 },'; - printf '%s\n' '+ { "Dmitry Timoshkov", "gdi32: ExtTextOut on a path with bitmap font selected shouldn'\''t fail.", 1 },'; - printf '%s\n' '+ { "Dmitry Timoshkov", "gdi32/tests: Explicitly test BeginPath() return value in the metafile path tests.", 1 },'; - ) >> "$patchlist" -fi - -# Patchset gdi32-Symbol_Truetype_Font -# | -# | This patchset fixes the following Wine bugs: -# | * [#33117] Improve detection of symbol charset for old truetype fonts -# | -# | Modified files: -# | * dlls/gdi32/freetype.c -# | -if test "$enable_gdi32_Symbol_Truetype_Font" -eq 1; then - patch_apply gdi32-Symbol_Truetype_Font/0001-gdi32-Improve-detection-of-symbol-charset-for-old-tr.patch - ( - printf '%s\n' '+ { "Dmitry Timoshkov", "gdi32: Improve detection of symbol charset for old truetype fonts.", 1 },'; - ) >> "$patchlist" -fi - # Patchset gdiplus-Performance-Improvements # | # | Modified files: @@ -4125,14 +4086,12 @@ fi # | * [#33159] Implement preloader for Mac OS # | # | Modified files: -# | * Makefile.in, configure.ac, dlls/ntdll/virtual.c, libs/wine/config.c, libs/wine/loader.c, loader/Makefile.in, -# | loader/main.c, loader/preloader.c +# | * Makefile.in, configure.ac, dlls/ntdll/virtual.c, libs/wine/config.c, loader/Makefile.in, loader/main.c, +# | loader/preloader.c # | if test "$enable_loader_OSX_Preloader" -eq 1; then - patch_apply loader-OSX_Preloader/0001-libs-wine-Do-not-restrict-base-address-of-main-threa.patch patch_apply loader-OSX_Preloader/0002-loader-Implement-preloader-for-Mac-OS.patch ( - printf '%s\n' '+ { "Michael Müller", "libs/wine: Do not restrict base address of main thread on 64 bit mac os.", 1 },'; printf '%s\n' '+ { "Sebastian Lackner", "loader: Implement preloader for Mac OS.", 1 },'; ) >> "$patchlist" fi diff --git a/patches/wined3d-CSMT_Main/0045-wined3d-Improve-wined3d_cs_emit_update_sub_resource.patch b/patches/wined3d-CSMT_Main/0045-wined3d-Improve-wined3d_cs_emit_update_sub_resource.patch index 5ffbf79a..f5b4ad07 100644 --- a/patches/wined3d-CSMT_Main/0045-wined3d-Improve-wined3d_cs_emit_update_sub_resource.patch +++ b/patches/wined3d-CSMT_Main/0045-wined3d-Improve-wined3d_cs_emit_update_sub_resource.patch @@ -1,19 +1,19 @@ -From 34214d87dc17013f634e37868f6d9a43184257d6 Mon Sep 17 00:00:00 2001 +From 775e75950966aa3225f2715dc081c044fdd868e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Mon, 20 Feb 2017 00:27:25 +0100 Subject: [PATCH] wined3d: Improve wined3d_cs_emit_update_sub_resource. --- - dlls/wined3d/cs.c | 76 ++++++++++++++++++++++++++++++++++++++++-- + dlls/wined3d/cs.c | 75 ++++++++++++++++++++++++++++++++++++++++++ dlls/wined3d/device.c | 2 -- dlls/wined3d/wined3d_private.h | 1 + - 3 files changed, 75 insertions(+), 4 deletions(-) + 3 files changed, 76 insertions(+), 2 deletions(-) diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c -index 27541bf..5f75b3c 100644 +index 02e36ca..2361fdc 100644 --- a/dlls/wined3d/cs.c +++ b/dlls/wined3d/cs.c -@@ -405,6 +405,7 @@ struct wined3d_cs_update_sub_resource +@@ -409,6 +409,7 @@ struct wined3d_cs_update_sub_resource unsigned int sub_resource_idx; struct wined3d_box box; struct wined3d_sub_resource_data data; @@ -21,7 +21,7 @@ index 27541bf..5f75b3c 100644 }; struct wined3d_cs_add_dirty_texture_region -@@ -2256,6 +2257,51 @@ void wined3d_cs_emit_update_sub_resource(struct wined3d_cs *cs, struct wined3d_r +@@ -2364,6 +2365,51 @@ void wined3d_cs_emit_update_sub_resource(struct wined3d_cs *cs, struct wined3d_r unsigned int slice_pitch) { struct wined3d_cs_update_sub_resource *op; @@ -73,16 +73,15 @@ index 27541bf..5f75b3c 100644 op = cs->ops->require_space(cs, sizeof(*op), WINED3D_CS_QUEUE_MAP); op->opcode = WINED3D_CS_OP_UPDATE_SUB_RESOURCE; -@@ -2269,8 +2315,6 @@ void wined3d_cs_emit_update_sub_resource(struct wined3d_cs *cs, struct wined3d_r +@@ -2377,6 +2423,7 @@ void wined3d_cs_emit_update_sub_resource(struct wined3d_cs *cs, struct wined3d_r wined3d_resource_acquire(resource); cs->ops->submit(cs, WINED3D_CS_QUEUE_MAP); -- /* The data pointer may go away, so we need to wait until it is read. -- * Copying the data may be faster if it's small. */ - cs->ops->finish(cs, WINED3D_CS_QUEUE_MAP); - } - -@@ -2453,6 +2497,11 @@ static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void ++ + /* The data pointer may go away, so we need to wait until it is read. + * Copying the data may be faster if it's small. */ + wined3d_cs_finish(cs, WINED3D_CS_QUEUE_MAP); +@@ -2561,6 +2608,11 @@ static void (* const wined3d_cs_op_handlers[])(struct wined3d_cs *cs, const void /* WINED3D_CS_OP_GENERATE_MIPMAPS */ wined3d_cs_exec_generate_mipmaps, }; @@ -94,7 +93,7 @@ index 27541bf..5f75b3c 100644 static void *wined3d_cs_st_require_space(struct wined3d_cs *cs, size_t size, enum wined3d_cs_queue_id queue_id) { if (size > (cs->data_size - cs->end)) -@@ -2506,6 +2555,7 @@ static void wined3d_cs_st_finish(struct wined3d_cs *cs, enum wined3d_cs_queue_id +@@ -2614,6 +2666,7 @@ static void wined3d_cs_st_finish(struct wined3d_cs *cs, enum wined3d_cs_queue_id static const struct wined3d_cs_ops wined3d_cs_st_ops = { @@ -102,7 +101,7 @@ index 27541bf..5f75b3c 100644 wined3d_cs_st_require_space, wined3d_cs_st_submit, wined3d_cs_st_finish, -@@ -2539,6 +2589,19 @@ static void wined3d_cs_mt_submit(struct wined3d_cs *cs, enum wined3d_cs_queue_id +@@ -2647,6 +2700,19 @@ static void wined3d_cs_mt_submit(struct wined3d_cs *cs, enum wined3d_cs_queue_id wined3d_cs_queue_submit(&cs->queue[queue_id], cs); } @@ -122,7 +121,7 @@ index 27541bf..5f75b3c 100644 static void *wined3d_cs_queue_require_space(struct wined3d_cs_queue *queue, size_t size, struct wined3d_cs *cs) { size_t queue_size = ARRAY_SIZE(queue->data); -@@ -2600,6 +2663,14 @@ static void *wined3d_cs_queue_require_space(struct wined3d_cs_queue *queue, size +@@ -2708,6 +2774,14 @@ static void *wined3d_cs_queue_require_space(struct wined3d_cs_queue *queue, size return packet->data; } @@ -137,7 +136,7 @@ index 27541bf..5f75b3c 100644 static void *wined3d_cs_mt_require_space(struct wined3d_cs *cs, size_t size, enum wined3d_cs_queue_id queue_id) { if (cs->thread_id == GetCurrentThreadId()) -@@ -2619,6 +2690,7 @@ static void wined3d_cs_mt_finish(struct wined3d_cs *cs, enum wined3d_cs_queue_id +@@ -2727,6 +2801,7 @@ static void wined3d_cs_mt_finish(struct wined3d_cs *cs, enum wined3d_cs_queue_id static const struct wined3d_cs_ops wined3d_cs_mt_ops = { @@ -146,10 +145,10 @@ index 27541bf..5f75b3c 100644 wined3d_cs_mt_submit, wined3d_cs_mt_finish, diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c -index 35d24ca..20b3277 100644 +index f51f4c8..7427fe4 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c -@@ -4337,8 +4337,6 @@ void CDECL wined3d_device_update_sub_resource(struct wined3d_device *device, str +@@ -4342,8 +4342,6 @@ void CDECL wined3d_device_update_sub_resource(struct wined3d_device *device, str return; } @@ -159,10 +158,10 @@ index 35d24ca..20b3277 100644 } diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h -index cbad162..b13f8f7 100644 +index 886f20b..dbdb16a 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h -@@ -3531,6 +3531,7 @@ struct wined3d_cs_queue +@@ -3639,6 +3639,7 @@ struct wined3d_cs_queue struct wined3d_cs_ops { @@ -171,5 +170,5 @@ index cbad162..b13f8f7 100644 void (*submit)(struct wined3d_cs *cs, enum wined3d_cs_queue_id queue_id); void (*finish)(struct wined3d_cs *cs, enum wined3d_cs_queue_id queue_id); -- -2.7.4 +1.9.1