mirror of
https://github.com/reactos/reactos.git
synced 2025-02-24 01:15:09 +00:00
[DESK.CPL]
Check for the correct registry value for the wallpaper. Patch by Ricardo Hanke. CORE-8796 svn path=/trunk/; revision=65656
This commit is contained in:
parent
1fa498439b
commit
af188cf2f8
1 changed files with 22 additions and 0 deletions
|
@ -78,6 +78,7 @@ AddListViewItems(HWND hwndDlg, PDATA pData)
|
|||
SHFILEINFO sfi;
|
||||
HIMAGELIST himl;
|
||||
TCHAR wallpaperFilename[MAX_PATH];
|
||||
TCHAR originalWallpaper[MAX_PATH];
|
||||
DWORD bufferSize = sizeof(wallpaperFilename);
|
||||
TCHAR buffer[MAX_PATH];
|
||||
DWORD varType = REG_SZ;
|
||||
|
@ -132,6 +133,27 @@ AddListViewItems(HWND hwndDlg, PDATA pData)
|
|||
result = RegQueryValueEx(regKey, TEXT("Wallpaper"), 0, &varType, (LPBYTE)wallpaperFilename, &bufferSize);
|
||||
if ((result == ERROR_SUCCESS) && (_tcslen(wallpaperFilename) > 0))
|
||||
{
|
||||
bufferSize = sizeof(originalWallpaper);
|
||||
result = RegQueryValueEx(regKey, TEXT("OriginalWallpaper"), 0, &varType, (LPBYTE)originalWallpaper, &bufferSize);
|
||||
|
||||
/* If Wallpaper and OriginalWallpaper are the same, try to retrieve ConvertedWallpaper and use it instead of Wallpaper */
|
||||
if ((result == ERROR_SUCCESS) && (_tcslen(originalWallpaper) > 0) && (_tcsicmp(wallpaperFilename, originalWallpaper) == 0))
|
||||
{
|
||||
bufferSize = sizeof(originalWallpaper);
|
||||
result = RegQueryValueEx(regKey, TEXT("ConvertedWallpaper"), 0, &varType, (LPBYTE)originalWallpaper, &bufferSize);
|
||||
|
||||
if ((result == ERROR_SUCCESS) && (_tcslen(originalWallpaper) > 0))
|
||||
{
|
||||
hr = StringCbCopy(wallpaperFilename, sizeof(wallpaperFilename), originalWallpaper);
|
||||
}
|
||||
|
||||
if (FAILED(hr))
|
||||
{
|
||||
RegCloseKey(regKey);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/* Allow environment variables in file name */
|
||||
if (ExpandEnvironmentStrings(wallpaperFilename, buffer, MAX_PATH))
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue