From 640f5f7d0a08a5e72eb762fdf991f3ab986bd9b3 Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Wed, 22 Sep 2021 08:28:32 +1000 Subject: [PATCH] Rebase against e482605548b124a7863f6b09395b3a850ae741cc. --- patches/patchinstall.sh | 7 +-- .../0001-include-Add-ISpAudio-interface.patch | 60 ------------------- ...Token-SetId-Support-create-parameter.patch | 29 --------- ...kenCategory-SetId-Support-create-par.patch | 32 ---------- ...t-a-recursive-activation-loop-on-WM_.patch | 14 ++--- staging/upstream-commit | 2 +- 6 files changed, 10 insertions(+), 134 deletions(-) delete mode 100644 patches/sapi-ISpObjectToken-CreateInstance/0001-include-Add-ISpAudio-interface.patch delete mode 100644 patches/sapi-ISpObjectToken-CreateInstance/0002-sapi-ISpObjectToken-SetId-Support-create-parameter.patch delete mode 100644 patches/sapi-ISpObjectToken-CreateInstance/0003-sapi-ISpObjectTokenCategory-SetId-Support-create-par.patch diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 52eabc95..418cce76 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "975d0632a19efd41338cb73a97f1b0bdbe7bc0cc" + echo "e482605548b124a7863f6b09395b3a850ae741cc" } # Show version information @@ -3098,12 +3098,9 @@ fi # | * [#49641] sapi: Implement ISpObjectToken-CreateInstance # | # | Modified files: -# | * dlls/sapi/token.c, include/sapi.idl +# | * dlls/sapi/token.c # | if test "$enable_sapi_ISpObjectToken_CreateInstance" -eq 1; then - patch_apply sapi-ISpObjectToken-CreateInstance/0001-include-Add-ISpAudio-interface.patch - patch_apply sapi-ISpObjectToken-CreateInstance/0002-sapi-ISpObjectToken-SetId-Support-create-parameter.patch - patch_apply sapi-ISpObjectToken-CreateInstance/0003-sapi-ISpObjectTokenCategory-SetId-Support-create-par.patch patch_apply sapi-ISpObjectToken-CreateInstance/0004-sapi-ISpObjectToken-CreateInstance-support-ISpAudio.patch fi diff --git a/patches/sapi-ISpObjectToken-CreateInstance/0001-include-Add-ISpAudio-interface.patch b/patches/sapi-ISpObjectToken-CreateInstance/0001-include-Add-ISpAudio-interface.patch deleted file mode 100644 index 9eb0a6ac..00000000 --- a/patches/sapi-ISpObjectToken-CreateInstance/0001-include-Add-ISpAudio-interface.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 51c747ba5e32109ed5d5b03e3bf5b67aecd8130c Mon Sep 17 00:00:00 2001 -From: Alistair Leslie-Hughes -Date: Wed, 15 Sep 2021 18:55:10 +1000 -Subject: [PATCH 1/4] include: Add ISpAudio interface - -Signed-off-by: Alistair Leslie-Hughes ---- - include/sapi.idl | 29 +++++++++++++++++++++++++++++ - 1 file changed, 29 insertions(+) - -diff --git a/include/sapi.idl b/include/sapi.idl -index 5120e379450..b9bc05c5be4 100644 ---- a/include/sapi.idl -+++ b/include/sapi.idl -@@ -492,6 +492,13 @@ typedef [hidden] enum SPFILEMODE - SPFM_NUM_MODES - } SPFILEMODE; - -+typedef [restricted, hidden] struct SPAUDIOBUFFERINFO -+{ -+ ULONG ulMsMinNotification; -+ ULONG ulMsBufferSize; -+ ULONG ulMsEventBias; -+} SPAUDIOBUFFERINFO; -+ - cpp_quote("#if defined(__GNUC__)") - - cpp_quote("#define SPCAT_AUDIOOUT (const WCHAR []){ 'H','K','E','Y','_','L','O','C','A','L','_','M','A','C','H','I','N','E','\\\\','S','O','F','T','W','A','R','E','\\\\','M','i','c','r','o','s','o','f','t','\\\\','S','p','e','e','c','h','\\\\','A','u','d','i','o','O','u','t','p','u','t',0 }") -@@ -993,6 +1000,28 @@ interface ISpStreamFormat : IStream - HRESULT GetFormat(GUID *format, WAVEFORMATEX **wave); - } - -+[ -+ object, -+ uuid(c05c768f-fae8-4ec2-8e07-338321c12452), -+ pointer_default(unique), -+ local, -+ restricted -+] -+interface ISpAudio : ISpStreamFormat -+{ -+ HRESULT SetState([in] SPAUDIOSTATE state, [in] ULONGLONG reserved); -+ HRESULT SetFormat([in] REFGUID guid, [in] const WAVEFORMATEX *wave); -+ HRESULT GetStatus([out] SPAUDIOSTATUS *status); -+ HRESULT SetBufferInfo([in] const SPAUDIOBUFFERINFO *buffer); -+ HRESULT GetBufferInfo([out] SPAUDIOBUFFERINFO *buffer); -+ HRESULT GetDefaultFormat([out] GUID *guid, [out] WAVEFORMATEX **wave); -+ HANDLE EventHandle(); -+ HRESULT GetVolumeLevel([out] ULONG *level); -+ HRESULT SetVolumeLevel([in] ULONG level); -+ HRESULT GetBufferNotifySize([out] ULONG *size); -+ HRESULT SetBufferNotifySize([in] ULONG size); -+}; -+ - [ - object, - uuid(5b4fb971-b115-4de1-ad97-e482e3bf6ee4), --- -2.33.0 - diff --git a/patches/sapi-ISpObjectToken-CreateInstance/0002-sapi-ISpObjectToken-SetId-Support-create-parameter.patch b/patches/sapi-ISpObjectToken-CreateInstance/0002-sapi-ISpObjectToken-SetId-Support-create-parameter.patch deleted file mode 100644 index 643ca217..00000000 --- a/patches/sapi-ISpObjectToken-CreateInstance/0002-sapi-ISpObjectToken-SetId-Support-create-parameter.patch +++ /dev/null @@ -1,29 +0,0 @@ -From dd0c16513f9c2be494327875915e7e7520b9d9e2 Mon Sep 17 00:00:00 2001 -From: Alistair Leslie-Hughes -Date: Wed, 15 Sep 2021 18:55:11 +1000 -Subject: [PATCH 2/4] sapi: ISpObjectToken SetId - Support create parameter - -Signed-off-by: Alistair Leslie-Hughes ---- - dlls/sapi/token.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/dlls/sapi/token.c b/dlls/sapi/token.c -index 04fa3a25d6a..ec1cce5f462 100644 ---- a/dlls/sapi/token.c -+++ b/dlls/sapi/token.c -@@ -942,7 +942,10 @@ static HRESULT WINAPI token_SetId( ISpObjectToken *iface, - hr = parse_cat_id( token_id, &root, &subkey ); - if (hr != S_OK) return SPERR_NOT_FOUND; - -- res = RegOpenKeyExW( root, subkey, 0, KEY_ALL_ACCESS, &key ); -+ if (create) -+ res = RegCreateKeyExW( root, subkey, 0, NULL, 0, KEY_ALL_ACCESS, NULL, &key, NULL); -+ else -+ res = RegOpenKeyExW( root, subkey, 0, KEY_ALL_ACCESS, &key ); - if (res) return SPERR_NOT_FOUND; - - This->token_key = key; --- -2.33.0 - diff --git a/patches/sapi-ISpObjectToken-CreateInstance/0003-sapi-ISpObjectTokenCategory-SetId-Support-create-par.patch b/patches/sapi-ISpObjectToken-CreateInstance/0003-sapi-ISpObjectTokenCategory-SetId-Support-create-par.patch deleted file mode 100644 index 7bcdba4b..00000000 --- a/patches/sapi-ISpObjectToken-CreateInstance/0003-sapi-ISpObjectTokenCategory-SetId-Support-create-par.patch +++ /dev/null @@ -1,32 +0,0 @@ -From e00a0d24dbb7c28c5e0de1b957b872ed9fdcdc90 Mon Sep 17 00:00:00 2001 -From: Alistair Leslie-Hughes -Date: Wed, 15 Sep 2021 18:55:11 +1000 -Subject: [PATCH 3/4] sapi: ISpObjectTokenCategory SetId - Support create - parameter - -Signed-off-by: Alistair Leslie-Hughes ---- - dlls/sapi/token.c | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/dlls/sapi/token.c b/dlls/sapi/token.c -index ec1cce5f462..ba91a425e9e 100644 ---- a/dlls/sapi/token.c -+++ b/dlls/sapi/token.c -@@ -416,9 +416,10 @@ static HRESULT WINAPI token_category_SetId( ISpObjectTokenCategory *iface, - hr = parse_cat_id( id, &root, &subkey ); - if (hr != S_OK) return SPERR_INVALID_REGISTRY_KEY; - -- if (create) FIXME( "Ignoring create\n" ); -- -- res = RegOpenKeyExW( root, subkey, 0, KEY_ALL_ACCESS, &key ); -+ if (create) -+ res = RegCreateKeyExW( root, subkey, 0, NULL, 0, KEY_ALL_ACCESS, NULL, &key, NULL ); -+ else -+ res = RegOpenKeyExW( root, subkey, 0, KEY_ALL_ACCESS, &key ); - if (res) return SPERR_INVALID_REGISTRY_KEY; - - hr = CoCreateInstance( &CLSID_SpDataKey, NULL, CLSCTX_ALL, --- -2.33.0 - diff --git a/patches/user32-recursive-activation/0002-user32-tests-Test-a-recursive-activation-loop-on-WM_.patch b/patches/user32-recursive-activation/0002-user32-tests-Test-a-recursive-activation-loop-on-WM_.patch index 40ca278d..c620f136 100644 --- a/patches/user32-recursive-activation/0002-user32-tests-Test-a-recursive-activation-loop-on-WM_.patch +++ b/patches/user32-recursive-activation/0002-user32-tests-Test-a-recursive-activation-loop-on-WM_.patch @@ -1,4 +1,4 @@ -From 0ff072aa67bc20ee219f5187d36d1ff132a96a6c Mon Sep 17 00:00:00 2001 +From ae16397afc8e15401c7274308e31c69aa6e8b619 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Iv=C4=83ncescu?= Date: Mon, 22 Jul 2019 15:29:26 +0300 Subject: [PATCH] user32/tests: Test a recursive activation loop on WM_ACTIVATE @@ -15,7 +15,7 @@ Signed-off-by: Gabriel Ivăncescu 1 file changed, 81 insertions(+) diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c -index 504a276c32f..0a0ee2da6e4 100644 +index 36199f055ac..877cdfbcc9c 100644 --- a/dlls/user32/tests/msg.c +++ b/dlls/user32/tests/msg.c @@ -5114,6 +5114,39 @@ static void test_showwindow(void) @@ -58,7 +58,7 @@ index 504a276c32f..0a0ee2da6e4 100644 static void test_sys_menu(void) { HWND hwnd; -@@ -10109,6 +10142,48 @@ static LRESULT WINAPI ShowWindowProcA(HWND hwnd, UINT message, WPARAM wParam, LP +@@ -10131,6 +10164,48 @@ static LRESULT WINAPI ShowWindowProcA(HWND hwnd, UINT message, WPARAM wParam, LP return ret; } @@ -107,7 +107,7 @@ index 504a276c32f..0a0ee2da6e4 100644 static LRESULT WINAPI PaintLoopProcA(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch (msg) -@@ -10206,6 +10281,10 @@ static BOOL RegisterWindowClasses(void) +@@ -10228,6 +10303,10 @@ static BOOL RegisterWindowClasses(void) cls.lpszClassName = "ShowWindowClass"; if(!RegisterClassA(&cls)) return FALSE; @@ -118,7 +118,7 @@ index 504a276c32f..0a0ee2da6e4 100644 cls.lpfnWndProc = PopupMsgCheckProcA; cls.lpszClassName = "TestPopupClass"; if(!RegisterClassA(&cls)) return FALSE; -@@ -10261,6 +10340,7 @@ static BOOL is_our_logged_class(HWND hwnd) +@@ -10283,6 +10362,7 @@ static BOOL is_our_logged_class(HWND hwnd) { if (!lstrcmpiA(buf, "TestWindowClass") || !lstrcmpiA(buf, "ShowWindowClass") || @@ -126,14 +126,14 @@ index 504a276c32f..0a0ee2da6e4 100644 !lstrcmpiA(buf, "TestParentClass") || !lstrcmpiA(buf, "TestPopupClass") || !lstrcmpiA(buf, "SimpleWindowClass") || -@@ -18499,6 +18579,7 @@ START_TEST(msg) +@@ -18521,6 +18601,7 @@ START_TEST(msg) test_messages(); test_setwindowpos(); test_showwindow(); + test_recursive_activation(); invisible_parent_tests(); test_mdi_messages(); - + test_button_messages(); -- 2.33.0 diff --git a/staging/upstream-commit b/staging/upstream-commit index 83bcf523..fbd73334 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -975d0632a19efd41338cb73a97f1b0bdbe7bc0cc +e482605548b124a7863f6b09395b3a850ae741cc