[USER32] Zero out buffer in SYSPARAMS_Load
Felix Nawothnig
felix.nawothnig at t-online.de
Tue Jul 5 22:56:12 CDT 2005
All my menu went flat because my UserPreferences key is 00000000 (too
few zeros) which resulted SystemParametersInfo reading the setting from
uninitialized memory...
ChangeLog:
Clear buffer before querying the registry in SYSPARAMS_Load.
-------------- next part --------------
Index: sysparams.c
===================================================================
RCS file: /home/wine/wine/dlls/user/sysparams.c,v
retrieving revision 1.26
diff -u -r1.26 sysparams.c
--- sysparams.c 5 Jul 2005 10:55:44 -0000 1.26
+++ sysparams.c 6 Jul 2005 03:50:43 -0000
@@ -81,37 +81,37 @@
static const char * const DefSysColors[] =
{
- "Scrollbar", "192 192 192", /* COLOR_SCROLLBAR */
- "Background", "0 128 128", /* COLOR_BACKGROUND */
- "ActiveTitle", "0 0 128", /* COLOR_ACTIVECAPTION */
- "InactiveTitle", "128 128 128", /* COLOR_INACTIVECAPTION */
- "Menu", "192 192 192", /* COLOR_MENU */
- "Window", "255 255 255", /* COLOR_WINDOW */
- "WindowFrame", "0 0 0", /* COLOR_WINDOWFRAME */
- "MenuText", "0 0 0", /* COLOR_MENUTEXT */
- "WindowText", "0 0 0", /* COLOR_WINDOWTEXT */
- "TitleText", "255 255 255", /* COLOR_CAPTIONTEXT */
- "ActiveBorder", "192 192 192", /* COLOR_ACTIVEBORDER */
- "InactiveBorder", "192 192 192", /* COLOR_INACTIVEBORDER */
- "AppWorkSpace", "128 128 128", /* COLOR_APPWORKSPACE */
- "Hilight", "0 0 128", /* COLOR_HIGHLIGHT */
- "HilightText", "255 255 255", /* COLOR_HIGHLIGHTTEXT */
- "ButtonFace", "192 192 192", /* COLOR_BTNFACE */
- "ButtonShadow", "128 128 128", /* COLOR_BTNSHADOW */
- "GrayText", "128 128 128", /* COLOR_GRAYTEXT */
- "ButtonText", "0 0 0", /* COLOR_BTNTEXT */
- "InactiveTitleText", "192 192 192", /* COLOR_INACTIVECAPTIONTEXT */
- "ButtonHilight", "255 255 255", /* COLOR_BTNHIGHLIGHT */
- "ButtonDkShadow", "0 0 0", /* COLOR_3DDKSHADOW */
- "ButtonLight", "224 224 224", /* COLOR_3DLIGHT */
- "InfoText", "0 0 0", /* COLOR_INFOTEXT */
- "InfoWindow", "255 255 225", /* COLOR_INFOBK */
- "ButtonAlternateFace", "180 180 180", /* COLOR_ALTERNATEBTNFACE */
- "HotTrackingColor", "0 0 255", /* COLOR_HOTLIGHT */
- "GradientActiveTitle", "16 132 208", /* COLOR_GRADIENTACTIVECAPTION */
- "GradientInactiveTitle", "181 181 181", /* COLOR_GRADIENTINACTIVECAPTION */
- "MenuHilight", "0 0 0", /* COLOR_MENUHILIGHT */
- "MenuBar", "192 192 192" /* COLOR_MENUBAR */
+ "Scrollbar", "212 208 200", /* COLOR_SCROLLBAR */
+ "Background", "58 110 165", /* COLOR_BACKGROUND */
+ "ActiveTitle", "10 36 106", /* COLOR_ACTIVECAPTION */
+ "InactiveTitle", "128 128 128", /* COLOR_INACTIVECAPTION */
+ "Menu", "212 208 200", /* COLOR_MENU */
+ "Window", "255 255 255", /* COLOR_WINDOW */
+ "WindowFrame", "0 0 0", /* COLOR_WINDOWFRAME */
+ "MenuText", "0 0 0", /* COLOR_MENUTEXT */
+ "WindowText", "0 0 0", /* COLOR_WINDOWTEXT */
+ "TitleText", "255 255 255", /* COLOR_CAPTIONTEXT */
+ "ActiveBorder", "212 208 200", /* COLOR_ACTIVEBORDER */
+ "InactiveBorder", "212 208 200", /* COLOR_INACTIVEBORDER */
+ "AppWorkSpace", "128 128 128", /* COLOR_APPWORKSPACE */
+ "Hilight", "10 36 106", /* COLOR_HIGHLIGHT */
+ "HilightText", "255 255 255", /* COLOR_HIGHLIGHTTEXT */
+ "ButtonFace", "212 208 200", /* COLOR_BTNFACE */
+ "ButtonShadow", "128 128 128", /* COLOR_BTNSHADOW */
+ "GrayText", "128 128 128", /* COLOR_GRAYTEXT */
+ "ButtonText", "0 0 0", /* COLOR_BTNTEXT */
+ "InactiveTitleText", "212 208 200",/* COLOR_INACTIVECAPTIONTEXT */
+ "ButtonHilight", "255 255 255", /* COLOR_BTNHIGHLIGHT */
+ "ButtonDkShadow", "64 64 64", /* COLOR_3DDKSHADOW */
+ "ButtonLight", "212 208 200", /* COLOR_3DLIGHT */
+ "InfoText", "0 0 0", /* COLOR_INFOTEXT */
+ "InfoWindow", "255 255 225", /* COLOR_INFOBK */
+ "ButtonAlternateFace", "181 181 181", /* COLOR_ALTERNATEBTNFACE */
+ "HotTrackingColor", "0 0 128", /* COLOR_HOTLIGHT */
+ "GradientActiveTitle", "166 202 240", /* COLOR_GRADIENTACTIVECAPTION */
+ "GradientInactiveTitle", "192 192 192",/* COLOR_GRADIENTINACTIVECAPTION */
+ "MenuHilight", "0 0 0", /* COLOR_MENUHILIGHT */
+ "MenuBar", "212 208 200" /* COLOR_MENUBAR */
};
/**
@@ -461,7 +461,8 @@
if ((RegOpenKeyW( get_volatile_regkey(), lpRegKey, &hKey ) == ERROR_SUCCESS) ||
(RegOpenKeyW( HKEY_CURRENT_USER, lpRegKey, &hKey ) == ERROR_SUCCESS))
{
- ret = !RegQueryValueExW( hKey, lpValName, NULL, &type, (LPBYTE)lpBuf, &count);
+ memset( lpBuf, 0, count );
+ ret = !RegQueryValueExW( hKey, lpValName, NULL, &type, (LPBYTE)lpBuf, &count);
RegCloseKey( hKey );
}
return ret;
More information about the wine-patches
mailing list