Aric Stewart : comctl32:
Unset active page while setting a new active page for a propsheet.
Alexandre Julliard
julliard at wine.codeweavers.com
Mon Apr 2 06:23:21 CDT 2007
Module: wine
Branch: master
Commit: 2a8463b558ab5406e696f96d04fc279cfc7f2833
URL: http://source.winehq.org/git/wine.git/?a=commit;h=2a8463b558ab5406e696f96d04fc279cfc7f2833
Author: Aric Stewart <aric at codeweavers.com>
Date: Fri Mar 30 11:35:12 2007 -0500
comctl32: Unset active page while setting a new active page for a propsheet.
Before calling the PSN_SETACTIVE in PROPSHEET_SetCurSel set the
active_page to -1. This prevents crashes and corruption of the
property sheet if the application makes any modifications during the
PSN_SETACTIVE.
---
dlls/comctl32/propsheet.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/dlls/comctl32/propsheet.c b/dlls/comctl32/propsheet.c
index 636b0b2..c84f23a 100644
--- a/dlls/comctl32/propsheet.c
+++ b/dlls/comctl32/propsheet.c
@@ -2023,6 +2023,11 @@ static BOOL PROPSHEET_SetCurSel(HWND hwndDlg,
return FALSE;
}
+ /* unset active page while doing this transition. */
+ if (psInfo->active_page != -1)
+ ShowWindow(psInfo->proppage[psInfo->active_page].hwndPage, SW_HIDE);
+ psInfo->active_page = -1;
+
while (1) {
int result;
PSHNOTIFY psn;
More information about the wine-cvs
mailing list