diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 5de7c0a4..d693cc79 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "0c249e6125fc9dc6ee86b4ef6ae0d9fa2fc6291b" + echo "42bba70a024060fbd698aadec20fbb6f61ad9e16" } # Show version information @@ -266,7 +266,6 @@ patch_enable_all () enable_user32_recursive_activation="$1" enable_user32_window_activation="$1" enable_uxtheme_CloseThemeClass="$1" - enable_uxtheme_GTK_Theming="$1" enable_version_VerQueryValue="$1" enable_widl_SLTG_Typelib_Support="$1" enable_widl_winrt_support="$1" @@ -889,9 +888,6 @@ patch_enable () uxtheme-CloseThemeClass) enable_uxtheme_CloseThemeClass="$2" ;; - uxtheme-GTK_Theming) - enable_uxtheme_GTK_Theming="$2" - ;; version-VerQueryValue) enable_version_VerQueryValue="$2" ;; @@ -1491,13 +1487,6 @@ if test "$enable_windows_media_speech_dll" -eq 1; then enable_widl_winrt_support=1 fi -if test "$enable_uxtheme_GTK_Theming" -eq 1; then - if test "$enable_uxtheme_CloseThemeClass" -gt 1; then - abort "Patchset uxtheme-CloseThemeClass disabled, but uxtheme-GTK_Theming depends on that." - fi - enable_uxtheme_CloseThemeClass=1 -fi - if test "$enable_user32_window_activation" -eq 1; then if test "$enable_user32_recursive_activation" -gt 1; then abort "Patchset user32-recursive-activation disabled, but user32-window-activation depends on that." @@ -4414,28 +4403,6 @@ if test "$enable_uxtheme_CloseThemeClass" -eq 1; then patch_apply uxtheme-CloseThemeClass/0001-uxtheme-Protect-CloseThemeData-from-invalid-input.patch fi -# Patchset uxtheme-GTK_Theming -# | -# | This patchset has the following (direct or indirect) dependencies: -# | * uxtheme-CloseThemeClass -# | -# | Modified files: -# | * configure.ac, dlls/uxtheme/Makefile.in, dlls/uxtheme/buffer.c, dlls/uxtheme/draw.c, dlls/uxtheme/gtk-button.c, -# | dlls/uxtheme/gtk-combobox.c, dlls/uxtheme/gtk-edit.c, dlls/uxtheme/gtk-header.c, dlls/uxtheme/gtk-listbox.c, -# | dlls/uxtheme/gtk-listview.c, dlls/uxtheme/gtk-menu.c, dlls/uxtheme/gtk-rebar.c, dlls/uxtheme/gtk-status.c, dlls/uxtheme -# | /gtk-tab.c, dlls/uxtheme/gtk-toolbar.c, dlls/uxtheme/gtk-trackbar.c, dlls/uxtheme/gtk-window.c, dlls/uxtheme/gtk.c, -# | dlls/uxtheme/main.c, dlls/uxtheme/metric.c, dlls/uxtheme/msstyles.c, dlls/uxtheme/property.c, dlls/uxtheme/stylemap.c, -# | dlls/uxtheme/system.c, dlls/uxtheme/uxini.c, dlls/uxtheme/uxthemedll.h, dlls/uxtheme/uxthemegtk.h, tools/makedep.c -# | -if test "$enable_uxtheme_GTK_Theming" -eq 1; then - patch_apply uxtheme-GTK_Theming/0000-Revert-uxtheme-Build-with-msvcrt.patch - patch_apply uxtheme-GTK_Theming/0001-uxtheme-Initial-implementation-of-GTK-backend.patch - patch_apply uxtheme-GTK_Theming/0002-makefiles-Only-apply-non-include-path-EXTRAINCL-flag.patch - patch_apply uxtheme-GTK_Theming/0003-uxtheme-Correctly-render-buttons-with-GTK-3.14.0.patch - patch_apply uxtheme-GTK_Theming/0004-uxtheme-Reset-FPU-flags-before-calling-GTK3-function.patch - patch_apply uxtheme-GTK_Theming/0005-uxtheme-Fix-some-incorrect-error-codes.patch -fi - # Patchset version-VerQueryValue # | # | Modified files: @@ -5070,6 +5037,7 @@ fi # | * dlls/winex11.drv/window.c # | if test "$enable_winex11_drv_Query_server_position" -eq 1; then + patch_apply winex11.drv-Query_server_position/0001-winex11.drv-Let-the-Window-Manager-handle-the-off-sc.patch patch_apply winex11.drv-Query_server_position/0001-winex11.drv-window-Query-the-X-server-for-the-actual.patch fi diff --git a/patches/uxtheme-CloseThemeClass/0001-uxtheme-Protect-CloseThemeData-from-invalid-input.patch b/patches/uxtheme-CloseThemeClass/0001-uxtheme-Protect-CloseThemeData-from-invalid-input.patch index fb4e88da..4a8344ec 100644 --- a/patches/uxtheme-CloseThemeClass/0001-uxtheme-Protect-CloseThemeData-from-invalid-input.patch +++ b/patches/uxtheme-CloseThemeClass/0001-uxtheme-Protect-CloseThemeData-from-invalid-input.patch @@ -1,4 +1,4 @@ -From f97de7500c086aa283e4b299f3f103a83438fd01 Mon Sep 17 00:00:00 2001 +From 21abf2eb3cab9a3dea048171eccd775949cfd548 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Fri, 18 Nov 2016 22:31:29 +0800 Subject: [PATCH] uxtheme: Protect CloseThemeData() from invalid input. @@ -14,7 +14,7 @@ Testcase by Michael Müller . 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/dlls/uxtheme/msstyles.c b/dlls/uxtheme/msstyles.c -index cee5aaf054e..5030e52a597 100644 +index cd7677e5783..a0ec290eb40 100644 --- a/dlls/uxtheme/msstyles.c +++ b/dlls/uxtheme/msstyles.c @@ -32,6 +32,7 @@ @@ -25,16 +25,16 @@ index cee5aaf054e..5030e52a597 100644 #include "wine/debug.h" #include "wine/heap.h" -@@ -54,6 +55,8 @@ static const WCHAR szThemesIniResource[] = { - 't','h','e','m','e','s','_','i','n','i','\0' - }; +@@ -50,6 +51,8 @@ extern int alphaBlendMode; + + #define MSSTYLES_VERSION 0x0003 +#define THEME_CLASS_SIGNATURE (('T' << 24) | ('H' << 16) | ('E' << 8) | 'M') + static PTHEME_FILE tfActiveTheme; /***********************************************************************/ -@@ -218,6 +221,7 @@ void MSSTYLES_CloseThemeFile(PTHEME_FILE tf) +@@ -205,6 +208,7 @@ void MSSTYLES_CloseThemeFile(PTHEME_FILE tf) pcls->partstate = ps->next; heap_free(ps); } @@ -42,7 +42,7 @@ index cee5aaf054e..5030e52a597 100644 heap_free(pcls); } } -@@ -449,6 +453,7 @@ static PTHEME_CLASS MSSTYLES_AddClass(PTHEME_FILE tf, LPCWSTR pszAppName, LPCWST +@@ -433,6 +437,7 @@ static PTHEME_CLASS MSSTYLES_AddClass(PTHEME_FILE tf, LPCWSTR pszAppName, LPCWST if(cur) return cur; cur = heap_alloc(sizeof(*cur)); @@ -50,7 +50,7 @@ index cee5aaf054e..5030e52a597 100644 cur->hTheme = tf->hTheme; lstrcpyW(cur->szAppName, pszAppName); lstrcpyW(cur->szClassName, pszClassName); -@@ -1042,6 +1047,23 @@ PTHEME_CLASS MSSTYLES_OpenThemeClass(LPCWSTR pszAppName, LPCWSTR pszClassList) +@@ -1024,6 +1029,23 @@ PTHEME_CLASS MSSTYLES_OpenThemeClass(LPCWSTR pszAppName, LPCWSTR pszClassList) */ HRESULT MSSTYLES_CloseThemeClass(PTHEME_CLASS tc) { @@ -96,7 +96,7 @@ index 0b7e1ab35cc..ba10ac82b82 100644 } THEME_IMAGE, *PTHEME_IMAGE; diff --git a/dlls/uxtheme/tests/system.c b/dlls/uxtheme/tests/system.c -index b3a861eaa6b..1cfafb30e2a 100644 +index 5b6c91dc481..83b8f2ba040 100644 --- a/dlls/uxtheme/tests/system.c +++ b/dlls/uxtheme/tests/system.c @@ -189,6 +189,10 @@ static void test_OpenThemeData(void) @@ -111,5 +111,5 @@ index b3a861eaa6b..1cfafb30e2a 100644 { SetLastError(0xdeadbeef); -- -2.20.1 +2.28.0 diff --git a/patches/uxtheme-GTK_Theming/definition b/patches/uxtheme-GTK_Theming/definition index c9910c72..216933bf 100644 --- a/patches/uxtheme-GTK_Theming/definition +++ b/patches/uxtheme-GTK_Theming/definition @@ -1,4 +1,5 @@ # based on https://github.com/akulinchev/uxthemegtk # sha1: ecbca8e848834180092d9078be0762a60617fcd7 Depends: uxtheme-CloseThemeClass +Disabled: True Fixes: Add support for GTK3 theming diff --git a/patches/winex11.drv-Query_server_position/0001-winex11.drv-window-Query-the-X-server-for-the-actual.patch b/patches/winex11.drv-Query_server_position/0001-winex11.drv-window-Query-the-X-server-for-the-actual.patch index b25db876..28301e98 100644 --- a/patches/winex11.drv-Query_server_position/0001-winex11.drv-window-Query-the-X-server-for-the-actual.patch +++ b/patches/winex11.drv-Query_server_position/0001-winex11.drv-window-Query-the-X-server-for-the-actual.patch @@ -1,4 +1,4 @@ -From 38d9b194e83b02f56d734da88396ac06ddb7af1f Mon Sep 17 00:00:00 2001 +From 36f2e96f24e12696d5ea1f758cfbf5425db2c675 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Iv=C4=83ncescu?= Date: Mon, 24 Dec 2018 14:26:57 +0200 Subject: [PATCH] winex11.drv/window: Query the X server for the actual rect of @@ -22,10 +22,10 @@ Signed-off-by: Gabriel Ivăncescu 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c -index 97dee52..7f436ac 100644 +index a850ae16a55..fb0e5aa68a6 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c -@@ -196,6 +196,25 @@ static BOOL has_owned_popups( HWND hwnd ) +@@ -197,6 +197,25 @@ static BOOL has_owned_popups( HWND hwnd ) return result.found; } @@ -51,7 +51,7 @@ index 97dee52..7f436ac 100644 /*********************************************************************** * alloc_win_data -@@ -2400,7 +2419,8 @@ void CDECL X11DRV_WindowPosChanged( HWND hwnd, HWND insert_after, UINT swp_flags +@@ -2503,7 +2522,8 @@ void CDECL X11DRV_WindowPosChanged( HWND hwnd, HWND insert_after, UINT swp_flags { if (((swp_flags & SWP_HIDEWINDOW) && !(new_style & WS_VISIBLE)) || (!event_type && !(new_style & WS_MINIMIZE) && @@ -59,8 +59,8 @@ index 97dee52..7f436ac 100644 + !is_window_rect_mapped( rectWindow ) && is_window_rect_mapped( &old_window_rect ) && + !is_actual_window_rect_mapped( data ))) { - release_win_data( data ); - unmap_window( hwnd ); + BOOL managed = data->managed; + -- -1.9.1 +2.28.0 diff --git a/staging/upstream-commit b/staging/upstream-commit index c45e7ffe..130b98e5 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -de679af492ed93d70c99dff7f7cfc01cc8f25eb0 +42bba70a024060fbd698aadec20fbb6f61ad9e16