[SHELL32] Refresh SHELLSTATE before writing it (#7516)

This commit is contained in:
Whindmar Saksit 2024-11-22 20:33:12 +01:00 committed by GitHub
parent 096a5518e5
commit 89a3b8fa8a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -279,6 +279,11 @@ VOID WINAPI SHGetSetSettings(LPSHELLSTATE lpss, DWORD dwMask, BOOL bSet)
if (bSet) if (bSet)
{ {
DWORD changed = 0; 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) \ #define SHGSS_WriteAdv(name, value, SSF) \
do { \ do { \