https://git.reactos.org/?p=reactos.git;a=commitdiff;h=89a3b8fa8af8bb7b75f60…
commit 89a3b8fa8af8bb7b75f60fb4d7c2f75c32eef1ab
Author: Whindmar Saksit <whindsaks(a)proton.me>
AuthorDate: Fri Nov 22 20:33:12 2024 +0100
Commit: GitHub <noreply(a)github.com>
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 { \