Module: wine Branch: master Commit: 8cef0863377ba2a2f52e8199cd07b78ffe6325a6 URL: http://source.winehq.org/git/wine.git/?a=commit;h=8cef0863377ba2a2f52e8199cd...
Author: Jacek Caban jacek@codeweavers.com Date: Wed Feb 28 03:53:37 2007 +0100
hhctrl.ocx: Don't use doWinMain in HtmlHelpW.
---
dlls/hhctrl.ocx/hhctrl.c | 39 +++++++++++++++++++-------------------- 1 files changed, 19 insertions(+), 20 deletions(-)
diff --git a/dlls/hhctrl.ocx/hhctrl.c b/dlls/hhctrl.ocx/hhctrl.c index 031c997..0ab13bd 100644 --- a/dlls/hhctrl.ocx/hhctrl.c +++ b/dlls/hhctrl.ocx/hhctrl.c @@ -25,8 +25,6 @@
WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
-int WINAPI doWinMain(HINSTANCE hInstance, LPSTR szCmdLine); - HINSTANCE hhctrl_hinstance;
BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD fdwReason, LPVOID lpvReserved) @@ -87,33 +85,34 @@ static const char *command_to_string(UINT command)
HWND WINAPI HtmlHelpW(HWND caller, LPCWSTR filename, UINT command, DWORD data) { - CHAR *file = NULL;
TRACE("(%p, %s, command=%s, data=%d)\n", caller, debugstr_w( filename ), command_to_string( command ), data);
- if (filename) + switch (command) { - DWORD len = WideCharToMultiByte( CP_ACP, 0, filename, -1, NULL, 0, NULL, NULL ); + case HH_DISPLAY_TOPIC: + case HH_DISPLAY_TOC: + case HH_DISPLAY_SEARCH: + case HH_HELP_CONTEXT: { + HHInfo *info; + BOOL res;
- file = hhctrl_alloc(len); - WideCharToMultiByte( CP_ACP, 0, filename, -1, file, len, NULL, NULL ); - } + FIXME("Not all HH cases handled correctly\n");
- switch (command) - { - case HH_DISPLAY_TOPIC: - case HH_DISPLAY_TOC: - case HH_DISPLAY_SEARCH: - case HH_HELP_CONTEXT: - FIXME("Not all HH cases handled correctly\n"); - doWinMain(GetModuleHandleW(NULL), file); - break; - default: - FIXME("HH case %s not handled.\n", command_to_string( command )); + info = CreateHelpViewer(filename); + + res = NavigateToChm(info, info->pCHMInfo->szFile, info->WinType.pszFile); + if(!res) + ReleaseHelpViewer(info); + + return NULL; /* FIXME */ } - hhctrl_free(file); + default: + FIXME("HH case %s not handled.\n", command_to_string( command )); + } + return 0; }