Re: [PATCH 3/9] hhctrl.ocx: Centralize merging HH_WINTYPE data (resend).
"Erich E. Hoover" <ehoover(a)mymail.mines.edu> writes:
@@ -28,6 +28,13 @@
WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
+#define HHWIN_PARAM_MASK (HHWIN_PARAM_PROPERTIES|HHWIN_PARAM_STYLES|HHWIN_PARAM_EXSTYLES|HHWIN_PARAM_RECT\ + |HHWIN_PARAM_NAV_WIDTH|HHWIN_PARAM_SHOWSTATE|HHWIN_PARAM_INFOTYPES\ + |HHWIN_PARAM_TB_FLAGS|HHWIN_PARAM_EXPANSION|HHWIN_PARAM_TABPOS\ + |HHWIN_PARAM_TABORDER|HHWIN_PARAM_HISTORY_COUNT|HHWIN_PARAM_CUR_TAB) +#define MERGE_PARAM(s,d,o,p) ((s->fsValidMembers & p) && (!(d->fsValidMembers & p) || o)) +#define MERGE_PROP(s,d,o,p) (s->p != 0 && (d->p == 0 || o))
These macros are fairly ugly, you should be able to do without that.
@@ -1752,16 +1752,16 @@ void ReleaseHelpViewer(HHInfo *info) list_remove(&info->entry);
/* Free allocated strings */ - heap_free(info->pszType); - heap_free(info->pszCaption); - heap_free(info->pszToc); - heap_free(info->pszIndex); - heap_free(info->pszFile); - heap_free(info->pszHome); - heap_free(info->pszJump1); - heap_free(info->pszJump2); - heap_free(info->pszUrlJump1); - heap_free(info->pszUrlJump2); + heap_free((LPVOID)info->WinType.pszType); + heap_free((LPVOID)info->WinType.pszCaption); + heap_free((LPVOID)info->WinType.pszToc); + heap_free((LPVOID)info->WinType.pszIndex); + heap_free((LPVOID)info->WinType.pszFile); + heap_free((LPVOID)info->WinType.pszHome); + heap_free((LPVOID)info->WinType.pszJump1); + heap_free((LPVOID)info->WinType.pszJump2); + heap_free((LPVOID)info->WinType.pszUrlJump1); + heap_free((LPVOID)info->WinType.pszUrlJump2);
Don't do that. -- Alexandre Julliard julliard(a)winehq.org
participants (1)
-
Alexandre Julliard