https://git.reactos.org/?p=reactos.git;a=commitdiff;h=89a3b8fa8af8bb7b75f60fb4d7c2f75c32eef1ab

commit 89a3b8fa8af8bb7b75f60fb4d7c2f75c32eef1ab
Author:     Whindmar Saksit <[email protected]>
AuthorDate: Fri Nov 22 20:33:12 2024 +0100
Commit:     GitHub <[email protected]>
CommitDate: Fri Nov 22 20:33:12 2024 +0100

    [SHELL32] Refresh SHELLSTATE before writing it (#7516)
---
 dll/win32/shell32/wine/shellord.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/dll/win32/shell32/wine/shellord.c 
b/dll/win32/shell32/wine/shellord.c
index 2300a7aab88..effe7f55bcd 100644
--- a/dll/win32/shell32/wine/shellord.c
+++ b/dll/win32/shell32/wine/shellord.c
@@ -279,6 +279,11 @@ VOID WINAPI SHGetSetSettings(LPSHELLSTATE lpss, DWORD 
dwMask, BOOL bSet)
     if (bSet)
     {
         DWORD changed = 0;
+        if (dwMask & ~g_CachedSSF)
+        {
+            SHELLSTATE tempstate;
+            SHGetSetSettings(&tempstate, dwMask, FALSE); // Read entries that 
are not in g_CachedSSF
+        }
 
 #define SHGSS_WriteAdv(name, value, SSF) \
     do { \

Reply via email to