From bc2258d678d43062441bbc62f98ad3d7370ab4be Mon Sep 17 00:00:00 2001 From: Erich Hoover Date: Tue, 2 Oct 2012 15:13:14 -0600 Subject: [PATCH] hhctrl.ocx: Store all the parameters the first time the WinType is filled in. --- dlls/hhctrl.ocx/chm.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/dlls/hhctrl.ocx/chm.c b/dlls/hhctrl.ocx/chm.c index 88bd6e52ad8..e3f2a44df97 100644 --- a/dlls/hhctrl.ocx/chm.c +++ b/dlls/hhctrl.ocx/chm.c @@ -263,6 +263,13 @@ void MergeChmProperties(HH_WINTYPEW *src, HHInfo *info, BOOL override) if (unhandled_params) FIXME("Unsupported fsValidMembers fields: 0x%x\n", unhandled_params); + dst->fsValidMembers |= merge; + if (dst->cbStruct == 0) + { + /* If the structure has not been filled in yet then use all of the values */ + dst->cbStruct = sizeof(HH_WINTYPEW); + merge = ~0; + } if (merge & HHWIN_PARAM_PROPERTIES) dst->fsWinProperties = src->fsWinProperties; if (merge & HHWIN_PARAM_STYLES) dst->dwStyles = src->dwStyles; if (merge & HHWIN_PARAM_EXSTYLES) dst->dwExStyles = src->dwExStyles; @@ -276,7 +283,6 @@ void MergeChmProperties(HH_WINTYPEW *src, HHInfo *info, BOOL override) if (merge & HHWIN_PARAM_TABORDER) memcpy(&dst->tabOrder, &src->tabOrder, sizeof(src->tabOrder)); if (merge & HHWIN_PARAM_HISTORY_COUNT) dst->cHistory = src->cHistory; if (merge & HHWIN_PARAM_CUR_TAB) dst->curNavType = src->curNavType; - dst->fsValidMembers |= merge; /* * Note: We assume that hwndHelp, hwndCaller, hwndToolBar, hwndNavigation, and hwndHTML cannot be