Module: wine Branch: refs/heads/master Commit: f5660c23ae76d5192d17b1a69d76991f03ffe717 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=f5660c23ae76d5192d17b1a6...
Author: Robert Shearman rob@codeweavers.com Date: Tue May 23 16:53:55 2006 +0100
comctl32: Fix the loading of strings for the property sheet page by caching the ID of the string to load before overwriting it with an Alloc call.
---
dlls/comctl32/propsheet.c | 30 ++++++++++++++++++------------ 1 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/dlls/comctl32/propsheet.c b/dlls/comctl32/propsheet.c index ea67e1b..2dad74f 100644 --- a/dlls/comctl32/propsheet.c +++ b/dlls/comctl32/propsheet.c @@ -2907,9 +2907,10 @@ HPROPSHEETPAGE WINAPI CreatePropertyShee PROPSHEET_AtoW( &ppsp->pszTitle, lpPropSheetPage->pszTitle ); else { - int len = LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszTitle), NULL, 0 ) + 1; + UINT id = LOWORD(ppsp->pszTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + sizeof(WCHAR); ppsp->pszTitle = Alloc( len ); - LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszTitle), (LPWSTR)ppsp->pszTitle, len ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszTitle, len ); } } else @@ -2924,9 +2925,10 @@ HPROPSHEETPAGE WINAPI CreatePropertyShee PROPSHEET_AtoW(&ppsp->pszHeaderTitle, lpPropSheetPage->pszHeaderTitle); else { - int len = LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszHeaderTitle), NULL, 0 ) + 1; + UINT id = LOWORD(ppsp->pszHeaderTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + sizeof(WCHAR); ppsp->pszHeaderTitle = Alloc( len ); - LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszHeaderTitle), (LPWSTR)ppsp->pszHeaderTitle, len ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszHeaderTitle, len ); } } else @@ -2938,9 +2940,10 @@ HPROPSHEETPAGE WINAPI CreatePropertyShee PROPSHEET_AtoW(&ppsp->pszHeaderSubTitle, lpPropSheetPage->pszHeaderSubTitle); else { - int len = LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszHeaderSubTitle), NULL, 0 ) + 1; + UINT id = LOWORD(ppsp->pszHeaderSubTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + sizeof(WCHAR); ppsp->pszHeaderSubTitle = Alloc( len ); - LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszHeaderSubTitle), (LPWSTR)ppsp->pszHeaderSubTitle, len ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszHeaderSubTitle, len ); } } else @@ -2992,9 +2995,10 @@ HPROPSHEETPAGE WINAPI CreatePropertyShee } else { - int len = LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszTitle), NULL, 0 ) + 1; + UINT id = LOWORD(ppsp->pszTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + sizeof(WCHAR); ppsp->pszTitle = Alloc( len ); - LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszTitle), (LPWSTR)ppsp->pszTitle, len ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszTitle, len ); } } else @@ -3013,9 +3017,10 @@ HPROPSHEETPAGE WINAPI CreatePropertyShee } else { - int len = LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszHeaderTitle), NULL, 0 ) + 1; + UINT id = LOWORD(ppsp->pszHeaderTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + sizeof(WCHAR); ppsp->pszHeaderTitle = Alloc( len ); - LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszHeaderTitle), (LPWSTR)ppsp->pszHeaderTitle, len ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszHeaderTitle, len ); } } else @@ -3031,9 +3036,10 @@ HPROPSHEETPAGE WINAPI CreatePropertyShee } else { - int len = LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszHeaderSubTitle), NULL, 0 ) + 1; + UINT id = LOWORD(ppsp->pszHeaderSubTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + sizeof(WCHAR); ppsp->pszHeaderSubTitle = Alloc( len ); - LoadStringW( ppsp->hInstance, LOWORD(ppsp->pszHeaderSubTitle), (LPWSTR)ppsp->pszHeaderSubTitle, len ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszHeaderSubTitle, len ); } } else