Module: wine Branch: master Commit: 317f26beefbb7f916a29cde25f7e254b4e10007c URL: http://source.winehq.org/git/wine.git/?a=commit;h=317f26beefbb7f916a29cde25f...
Author: Erich Hoover ehoover@mines.edu Date: Wed Oct 3 09:22:11 2012 -0600
hhctrl.ocx: Add support for specifying window names with HH_HELP_CONTEXT.
---
dlls/hhctrl.ocx/hhctrl.c | 18 +++++++++++++++--- 1 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/dlls/hhctrl.ocx/hhctrl.c b/dlls/hhctrl.ocx/hhctrl.c index 2814ab2..3fd7df5 100644 --- a/dlls/hhctrl.ocx/hhctrl.c +++ b/dlls/hhctrl.ocx/hhctrl.c @@ -244,21 +244,33 @@ HWND WINAPI HtmlHelpW(HWND caller, LPCWSTR filename, UINT command, DWORD_PTR dat return info->WinType.hwndHelp; } case HH_HELP_CONTEXT: { - HHInfo *info; + WCHAR *window = NULL; + HHInfo *info = NULL; LPWSTR url;
if (!filename) return NULL;
- if (!resolve_filename(filename, fullname, MAX_PATH, NULL, NULL)) + if (!resolve_filename(filename, fullname, MAX_PATH, NULL, &window)) { WARN("can't find %s\n", debugstr_w(filename)); return 0; }
- info = CreateHelpViewer(NULL, fullname, caller); + if (window) + info = find_window(window); + + info = CreateHelpViewer(info, fullname, caller); if(!info) + { + heap_free(window); return NULL; + } + + if(!info->WinType.pszType) + info->WinType.pszType = info->stringsW.pszType = window; + else + heap_free(window);
url = FindContextAlias(info->pCHMInfo, data); if(!url)