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