https://git.reactos.org/?p=reactos.git;a=commitdiff;h=96f371dcdb1874871a206e0ff6659042d248ccdd

commit 96f371dcdb1874871a206e0ff6659042d248ccdd
Author:     Amine Khaldi <[email protected]>
AuthorDate: Thu Mar 15 12:19:43 2018 +0100
Commit:     Amine Khaldi <[email protected]>
CommitDate: Thu Mar 15 12:19:43 2018 +0100

    [HHCTRL.OCX] Sync with Wine Staging 3.3. CORE-14434
---
 dll/win32/hhctrl.ocx/CMakeLists.txt |   4 +-
 dll/win32/hhctrl.ocx/chm.c          | 143 ++++++++++++++++++++++++++----------
 dll/win32/hhctrl.ocx/content.c      |   8 ++
 dll/win32/hhctrl.ocx/help.c         |  11 ++-
 dll/win32/hhctrl.ocx/hhctrl.c       |  17 ++++-
 dll/win32/hhctrl.ocx/hhctrl.h       |  64 +++++-----------
 dll/win32/hhctrl.ocx/hhctrl.rc      |   5 +-
 dll/win32/hhctrl.ocx/index.c        |   5 ++
 dll/win32/hhctrl.ocx/precomp.h      |  19 +++++
 dll/win32/hhctrl.ocx/resource.h     |   5 ++
 dll/win32/hhctrl.ocx/search.c       |   5 ++
 dll/win32/hhctrl.ocx/stream.c       |   5 ++
 dll/win32/hhctrl.ocx/stream.h       |   2 +-
 dll/win32/hhctrl.ocx/webbrowser.c   |   5 +-
 media/doc/README.WINE               |   2 +-
 15 files changed, 206 insertions(+), 94 deletions(-)

diff --git a/dll/win32/hhctrl.ocx/CMakeLists.txt 
b/dll/win32/hhctrl.ocx/CMakeLists.txt
index d94b5b1553..80b7975dca 100644
--- a/dll/win32/hhctrl.ocx/CMakeLists.txt
+++ b/dll/win32/hhctrl.ocx/CMakeLists.txt
@@ -15,7 +15,7 @@ list(APPEND SOURCE
     search.c
     stream.c
     webbrowser.c
-    hhctrl.h)
+    precomp.h)
 
 add_library(hhctrl SHARED
     ${SOURCE}
@@ -34,5 +34,5 @@ set_module_type(hhctrl win32ocx)
 target_link_libraries(hhctrl uuid wine)
 add_importlibs(hhctrl advapi32 comctl32 shlwapi ole32 oleaut32 user32 gdi32 
msvcrt kernel32 ntdll)
 add_dependencies(hhctrl stdole2 wineheaders)
-add_pch(hhctrl hhctrl.h SOURCE)
+add_pch(hhctrl precomp.h SOURCE)
 add_cd_file(TARGET hhctrl DESTINATION reactos/system32 FOR all)
diff --git a/dll/win32/hhctrl.ocx/chm.c b/dll/win32/hhctrl.ocx/chm.c
index 617e6dfd1c..8cf2539d71 100644
--- a/dll/win32/hhctrl.ocx/chm.c
+++ b/dll/win32/hhctrl.ocx/chm.c
@@ -20,9 +20,13 @@
  */
 
 #include "hhctrl.h"
+#include "stream.h"
 
-#include <winreg.h>
-#include <shlwapi.h>
+#include "winreg.h"
+#include "shlwapi.h"
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
 
 /* Reads a string from the #STRINGS section in the CHM file */
 static LPCSTR GetChmString(CHMInfo *chm, DWORD offset)
@@ -304,15 +308,31 @@ void MergeChmProperties(HH_WINTYPEW *src, HHInfo *info, 
BOOL override)
 #endif
 }
 
-static inline WCHAR *ConvertChmString(HHInfo *info, const WCHAR **str)
+static inline WCHAR *ConvertChmString(HHInfo *info, DWORD id)
 {
     WCHAR *ret = NULL;
 
-    if(*str)
-        *str = ret = strdupAtoW(GetChmString(info->pCHMInfo, (DWORD_PTR)*str));
+    if(id)
+        ret = strdupAtoW(GetChmString(info->pCHMInfo, id));
     return ret;
 }
 
+static inline void wintype_free(HH_WINTYPEW *wintype)
+{
+    heap_free((void *)wintype->pszType);
+    heap_free((void *)wintype->pszCaption);
+    heap_free(wintype->paInfoTypes);
+    heap_free((void *)wintype->pszToc);
+    heap_free((void *)wintype->pszIndex);
+    heap_free((void *)wintype->pszFile);
+    heap_free((void *)wintype->pszHome);
+    heap_free((void *)wintype->pszJump1);
+    heap_free((void *)wintype->pszJump2);
+    heap_free((void *)wintype->pszUrlJump1);
+    heap_free((void *)wintype->pszUrlJump2);
+    heap_free((void *)wintype->pszCustomTabs);
+}
+
 /* Loads the HH_WINTYPE data from the CHM file
  *
  * FIXME: There may be more than one window type in the file, so
@@ -321,8 +341,6 @@ static inline WCHAR *ConvertChmString(HHInfo *info, const 
WCHAR **str)
 BOOL LoadWinTypeFromCHM(HHInfo *info)
 {
     LARGE_INTEGER liOffset;
-    WCHAR *pszType = NULL, *pszFile = NULL, *pszToc = NULL, *pszIndex = NULL, 
*pszCaption = NULL;
-    WCHAR *pszHome = NULL, *pszJump1 = NULL, *pszJump2 = NULL, *pszUrlJump1 = 
NULL, *pszUrlJump2 = NULL;
     IStorage *pStorage = info->pCHMInfo->pStorage;
     IStream *pStream = NULL;
     HH_WINTYPEW wintype;
@@ -330,11 +348,57 @@ BOOL LoadWinTypeFromCHM(HHInfo *info)
     DWORD cbRead;
     BOOL ret = FALSE;
 
-    static const WCHAR null[] = {0};
+    static const WCHAR empty[] = {0};
     static const WCHAR toc_extW[] = {'h','h','c',0};
     static const WCHAR index_extW[] = {'h','h','k',0};
     static const WCHAR windowsW[] = {'#','W','I','N','D','O','W','S',0};
 
+    /* HH_WINTYPE as stored on disk.  It's identical to HH_WINTYPE except that 
the pointer fields
+       have been changed to DWORDs, so that the layout on 64-bit remains 
unchanged. */
+    struct file_wintype
+    {
+        int          cbStruct;
+        BOOL         fUniCodeStrings;
+        DWORD        pszType;
+        DWORD        fsValidMembers;
+        DWORD        fsWinProperties;
+        DWORD        pszCaption;
+        DWORD        dwStyles;
+        DWORD        dwExStyles;
+        RECT         rcWindowPos;
+        int          nShowState;
+        DWORD        hwndHelp;
+        DWORD        hwndCaller;
+        DWORD        paInfoTypes;
+        DWORD        hwndToolBar;
+        DWORD        hwndNavigation;
+        DWORD        hwndHTML;
+        int          iNavWidth;
+        RECT         rcHTML;
+        DWORD        pszToc;
+        DWORD        pszIndex;
+        DWORD        pszFile;
+        DWORD        pszHome;
+        DWORD        fsToolBarFlags;
+        BOOL         fNotExpanded;
+        int          curNavType;
+        int          tabpos;
+        int          idNotify;
+        BYTE         tabOrder[HH_MAX_TABS+1];
+        int          cHistory;
+        DWORD        pszJump1;
+        DWORD        pszJump2;
+        DWORD        pszUrlJump1;
+        DWORD        pszUrlJump2;
+        RECT         rcMinSize;
+        int          cbInfoTypes;
+        DWORD        pszCustomTabs;
+    } file_wintype;
+
+    memset(&wintype, 0, sizeof(wintype));
+    wintype.cbStruct = sizeof(wintype);
+    wintype.fUniCodeStrings = TRUE;
+
     hr = IStorage_OpenStream(pStorage, windowsW, NULL, STGM_READ, 0, &pStream);
     if (SUCCEEDED(hr))
     {
@@ -345,31 +409,45 @@ BOOL LoadWinTypeFromCHM(HHInfo *info)
         if (FAILED(hr)) goto done;
 
         /* read the HH_WINTYPE struct data */
-        hr = IStream_Read(pStream, &wintype, sizeof(wintype), &cbRead);
+        hr = IStream_Read(pStream, &file_wintype, sizeof(file_wintype), 
&cbRead);
         if (FAILED(hr)) goto done;
 
         /* convert the #STRINGS offsets to actual strings */
-        pszType     = ConvertChmString(info, &wintype.pszType);
-        pszFile     = ConvertChmString(info, &wintype.pszFile);
-        pszToc      = ConvertChmString(info, &wintype.pszToc);
-        pszIndex    = ConvertChmString(info, &wintype.pszIndex);
-        pszCaption  = ConvertChmString(info, &wintype.pszCaption);
-        pszHome     = ConvertChmString(info, &wintype.pszHome);
-        pszJump1    = ConvertChmString(info, &wintype.pszJump1);
-        pszJump2    = ConvertChmString(info, &wintype.pszJump2);
-        pszUrlJump1 = ConvertChmString(info, &wintype.pszUrlJump1);
-        pszUrlJump2 = ConvertChmString(info, &wintype.pszUrlJump2);
+        wintype.pszType         = ConvertChmString(info, file_wintype.pszType);
+        wintype.fsValidMembers  = file_wintype.fsValidMembers;
+        wintype.fsWinProperties = file_wintype.fsWinProperties;
+        wintype.pszCaption      = ConvertChmString(info, 
file_wintype.pszCaption);
+        wintype.dwStyles        = file_wintype.dwStyles;
+        wintype.dwExStyles      = file_wintype.dwExStyles;
+        wintype.rcWindowPos     = file_wintype.rcWindowPos;
+        wintype.nShowState      = file_wintype.nShowState;
+        wintype.iNavWidth       = file_wintype.iNavWidth;
+        wintype.rcHTML          = file_wintype.rcHTML;
+        wintype.pszToc          = ConvertChmString(info, file_wintype.pszToc);
+        wintype.pszIndex        = ConvertChmString(info, 
file_wintype.pszIndex);
+        wintype.pszFile         = ConvertChmString(info, file_wintype.pszFile);
+        wintype.pszHome         = ConvertChmString(info, file_wintype.pszHome);
+        wintype.fsToolBarFlags  = file_wintype.fsToolBarFlags;
+        wintype.fNotExpanded    = file_wintype.fNotExpanded;
+        wintype.curNavType      = file_wintype.curNavType;
+        wintype.tabpos          = file_wintype.tabpos;
+        wintype.idNotify        = file_wintype.idNotify;
+        memcpy(&wintype.tabOrder, file_wintype.tabOrder, 
sizeof(wintype.tabOrder));
+        wintype.cHistory        = file_wintype.cHistory;
+        wintype.pszJump1        = ConvertChmString(info, 
file_wintype.pszJump1);
+        wintype.pszJump2        = ConvertChmString(info, 
file_wintype.pszJump2);
+        wintype.pszUrlJump1     = ConvertChmString(info, 
file_wintype.pszUrlJump1);
+        wintype.pszUrlJump2     = ConvertChmString(info, 
file_wintype.pszUrlJump2);
+        wintype.rcMinSize       = file_wintype.rcMinSize;
+        wintype.cbInfoTypes     = file_wintype.cbInfoTypes;
     }
     else
     {
         /* no defined window types so use (hopefully) sane defaults */
         static const WCHAR defaultwinW[] = 
{'d','e','f','a','u','l','t','w','i','n','\0'};
-        memset(&wintype, 0, sizeof(wintype));
-        wintype.cbStruct = sizeof(wintype);
-        wintype.fUniCodeStrings = TRUE;
-        wintype.pszType    = pszType     = strdupW(info->pCHMInfo->defWindow ? 
info->pCHMInfo->defWindow : defaultwinW);
-        wintype.pszToc     = pszToc      = strdupW(info->pCHMInfo->defToc ? 
info->pCHMInfo->defToc : null);
-        wintype.pszIndex   = pszIndex    = strdupW(null);
+        wintype.pszType    = strdupW(info->pCHMInfo->defWindow ? 
info->pCHMInfo->defWindow : defaultwinW);
+        wintype.pszToc     = strdupW(info->pCHMInfo->defToc ? 
info->pCHMInfo->defToc : empty);
+        wintype.pszIndex   = strdupW(empty);
         wintype.fsValidMembers = 0;
         wintype.fsWinProperties = HHWIN_PROP_TRI_PANE;
         wintype.dwStyles = WS_POPUP;
@@ -381,24 +459,15 @@ BOOL LoadWinTypeFromCHM(HHInfo *info)
     /* merge the new data with any pre-existing HH_WINTYPE structure */
     MergeChmProperties(&wintype, info, FALSE);
     if (!info->WinType.pszCaption)
-        info->WinType.pszCaption = info->stringsW.pszCaption = 
strdupW(info->pCHMInfo->defTitle ? info->pCHMInfo->defTitle : null);
+        info->WinType.pszCaption = info->stringsW.pszCaption = 
strdupW(info->pCHMInfo->defTitle ? info->pCHMInfo->defTitle : empty);
     if (!info->WinType.pszFile)
-        info->WinType.pszFile    = info->stringsW.pszFile    = 
strdupW(info->pCHMInfo->defTopic ? info->pCHMInfo->defTopic : null);
+        info->WinType.pszFile    = info->stringsW.pszFile    = 
strdupW(info->pCHMInfo->defTopic ? info->pCHMInfo->defTopic : empty);
     if (!info->WinType.pszToc)
         info->WinType.pszToc     = info->stringsW.pszToc     = 
FindHTMLHelpSetting(info, toc_extW);
     if (!info->WinType.pszIndex)
         info->WinType.pszIndex   = info->stringsW.pszIndex   = 
FindHTMLHelpSetting(info, index_extW);
 
-    heap_free(pszType);
-    heap_free(pszFile);
-    heap_free(pszToc);
-    heap_free(pszIndex);
-    heap_free(pszCaption);
-    heap_free(pszHome);
-    heap_free(pszJump1);
-    heap_free(pszJump2);
-    heap_free(pszUrlJump1);
-    heap_free(pszUrlJump2);
+    wintype_free(&wintype);
     ret = TRUE;
 
 done:
diff --git a/dll/win32/hhctrl.ocx/content.c b/dll/win32/hhctrl.ocx/content.c
index 2a411bd69c..6a7c8f8a8c 100644
--- a/dll/win32/hhctrl.ocx/content.c
+++ b/dll/win32/hhctrl.ocx/content.c
@@ -17,7 +17,15 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
+#define NONAMELESSUNION
+
 #include "hhctrl.h"
+#include "stream.h"
+#include "resource.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
 
 typedef enum {
     INSERT_NEXT,
diff --git a/dll/win32/hhctrl.ocx/help.c b/dll/win32/hhctrl.ocx/help.c
index add3b74dac..c7a2a7a9e2 100644
--- a/dll/win32/hhctrl.ocx/help.c
+++ b/dll/win32/hhctrl.ocx/help.c
@@ -22,8 +22,15 @@
 
 #include "hhctrl.h"
 
-#include <wingdi.h>
-#include <wininet.h>
+#include "wingdi.h"
+#include "commctrl.h"
+#include "wininet.h"
+
+#include "wine/debug.h"
+
+#include "resource.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
 
 static LRESULT Help_OnSize(HWND hWnd);
 static void ExpandContract(HHInfo *pHHInfo);
diff --git a/dll/win32/hhctrl.ocx/hhctrl.c b/dll/win32/hhctrl.ocx/hhctrl.c
index 89cda1f96a..7efca002f9 100644
--- a/dll/win32/hhctrl.ocx/hhctrl.c
+++ b/dll/win32/hhctrl.ocx/hhctrl.c
@@ -19,9 +19,24 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
+#include "wine/debug.h"
+
+#include <stdarg.h>
+
+#define COBJMACROS
+
+#include "windef.h"
+#include "winbase.h"
+#include "winuser.h"
+#include "winnls.h"
+#include "htmlhelp.h"
+#include "ole2.h"
+#include "rpcproxy.h"
+
+#define INIT_GUID
 #include "hhctrl.h"
 
-#include <rpcproxy.h>
+WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
 
 HINSTANCE hhctrl_hinstance;
 BOOL hh_process = FALSE;
diff --git a/dll/win32/hhctrl.ocx/hhctrl.h b/dll/win32/hhctrl.ocx/hhctrl.h
index 34a9153407..b358f54378 100644
--- a/dll/win32/hhctrl.ocx/hhctrl.h
+++ b/dll/win32/hhctrl.ocx/hhctrl.h
@@ -22,32 +22,26 @@
 
 #include <stdarg.h>
 
-#define WIN32_NO_STATUS
-#define _INC_WINDOWS
-#define COM_NO_WINDOWS_H
-
 #define COBJMACROS
-#define NONAMELESSUNION
-#define NONAMELESSSTRUCT
-
-#include <windef.h>
-#include <winbase.h>
-#include <winuser.h>
-#include <htmlhelp.h>
-#include <ole2.h>
-#include <exdisp.h>
-#include <mshtmhst.h>
-#include <commctrl.h>
-
-#include <wine/itss.h>
-#include <wine/unicode.h>
-#include <wine/list.h>
-
-#include <wine/debug.h>
-WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
 
-#include "resource.h"
-#include "stream.h"
+#include "windef.h"
+#include "winbase.h"
+#include "winuser.h"
+#include "winnls.h"
+#include "htmlhelp.h"
+#include "ole2.h"
+#include "exdisp.h"
+#include "mshtmhst.h"
+#include "commctrl.h"
+
+#ifdef INIT_GUID
+#include "initguid.h"
+#endif
+
+#include "wine/itss.h"
+#include "wine/unicode.h"
+#include "wine/heap.h"
+#include "wine/list.h"
 
 #define WB_GOBACK     0
 #define WB_GOFORWARD  1
@@ -251,31 +245,11 @@ HHInfo *find_window(const WCHAR *window) DECLSPEC_HIDDEN;
 
 /* memory allocation functions */
 
-static inline void * __WINE_ALLOC_SIZE(1) heap_alloc(size_t len)
-{
-    return HeapAlloc(GetProcessHeap(), 0, len);
-}
-
-static inline void * __WINE_ALLOC_SIZE(1) heap_alloc_zero(size_t len)
-{
-    return HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, len);
-}
-
-static inline void * __WINE_ALLOC_SIZE(2) heap_realloc(void *mem, size_t len)
-{
-    return HeapReAlloc(GetProcessHeap(), 0, mem, len);
-}
-
 static inline void * __WINE_ALLOC_SIZE(2) heap_realloc_zero(void *mem, size_t 
len)
 {
     return HeapReAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, mem, len);
 }
 
-static inline BOOL heap_free(void *mem)
-{
-    return HeapFree(GetProcessHeap(), 0, mem);
-}
-
 static inline LPWSTR strdupW(LPCWSTR str)
 {
     LPWSTR ret;
@@ -337,4 +311,4 @@ static inline LPSTR strdupWtoA(LPCWSTR str)
 extern HINSTANCE hhctrl_hinstance DECLSPEC_HIDDEN;
 extern BOOL hh_process DECLSPEC_HIDDEN;
 
-#endif /* HHCTRL_H */
+#endif
diff --git a/dll/win32/hhctrl.ocx/hhctrl.rc b/dll/win32/hhctrl.ocx/hhctrl.rc
index aad7643aec..c270efa937 100644
--- a/dll/win32/hhctrl.ocx/hhctrl.rc
+++ b/dll/win32/hhctrl.ocx/hhctrl.rc
@@ -19,9 +19,6 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-#include <windef.h>
-#include <htmlhelp.h>
-
 #include "resource.h"
 
 /* UTF-8 */
@@ -115,7 +112,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
 #define WINE_PRODUCTVERSION 5,2,3790,2744
 #define WINE_PRODUCTVERSION_STR "5.2.3790.2744"
 
-#include <wine/wine_common_ver.rc>
+#include "wine/wine_common_ver.rc"
 
 /* @makedep: hhtoolbar.bmp */
 IDB_HHTOOLBAR BITMAP "res/hhtoolbar.bmp"
diff --git a/dll/win32/hhctrl.ocx/index.c b/dll/win32/hhctrl.ocx/index.c
index 327d4d7364..8b80ce24e7 100644
--- a/dll/win32/hhctrl.ocx/index.c
+++ b/dll/win32/hhctrl.ocx/index.c
@@ -18,6 +18,11 @@
  */
 
 #include "hhctrl.h"
+#include "stream.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
 
 /* Fill the TreeView object corresponding to the Index items */
 static void fill_index_tree(HWND hwnd, IndexItem *item)
diff --git a/dll/win32/hhctrl.ocx/precomp.h b/dll/win32/hhctrl.ocx/precomp.h
new file mode 100644
index 0000000000..fa41030858
--- /dev/null
+++ b/dll/win32/hhctrl.ocx/precomp.h
@@ -0,0 +1,19 @@
+
+#ifndef _HHCTRL_PRECOMP_H
+#define _HHCTRL_PRECOMP_H
+
+#define WIN32_NO_STATUS
+#define _INC_WINDOWS
+#define COM_NO_WINDOWS_H
+
+#define NONAMELESSUNION
+#define NONAMELESSSTRUCT
+
+#include "hhctrl.h"
+
+#include <wine/debug.h>
+
+#include "resource.h"
+#include "stream.h"
+
+#endif /* !_HHCTRL_PRECOMP_H */
diff --git a/dll/win32/hhctrl.ocx/resource.h b/dll/win32/hhctrl.ocx/resource.h
index 1a1ca0ed22..f2b4383493 100644
--- a/dll/win32/hhctrl.ocx/resource.h
+++ b/dll/win32/hhctrl.ocx/resource.h
@@ -20,6 +20,11 @@
 
 #pragma once
 
+#include <windef.h>
+#include <winbase.h>
+#include <wingdi.h>
+#include <htmlhelp.h>
+
 #define IDS_CONTENTS    1
 #define IDS_INDEX       2
 #define IDS_SEARCH      3
diff --git a/dll/win32/hhctrl.ocx/search.c b/dll/win32/hhctrl.ocx/search.c
index 874889071b..d758a1b30f 100644
--- a/dll/win32/hhctrl.ocx/search.c
+++ b/dll/win32/hhctrl.ocx/search.c
@@ -17,6 +17,11 @@
  */
 
 #include "hhctrl.h"
+#include "stream.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
 
 static SearchItem *SearchCHM_Folder(SearchItem *item, IStorage *pStorage,
                                     const WCHAR *folder, const char *needle);
diff --git a/dll/win32/hhctrl.ocx/stream.c b/dll/win32/hhctrl.ocx/stream.c
index 226aa70184..b4239ca5b6 100644
--- a/dll/win32/hhctrl.ocx/stream.c
+++ b/dll/win32/hhctrl.ocx/stream.c
@@ -17,6 +17,11 @@
  */
 
 #include "hhctrl.h"
+#include "stream.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
 
 void strbuf_init(strbuf_t *buf)
 {
diff --git a/dll/win32/hhctrl.ocx/stream.h b/dll/win32/hhctrl.ocx/stream.h
index b45869b738..8d61ad54d5 100644
--- a/dll/win32/hhctrl.ocx/stream.h
+++ b/dll/win32/hhctrl.ocx/stream.h
@@ -45,4 +45,4 @@ BOOL next_content(stream_t *stream, strbuf_t *buf) 
DECLSPEC_HIDDEN;
 BOOL next_node(stream_t *stream, strbuf_t *buf) DECLSPEC_HIDDEN;
 const char *get_attr(const char *node, const char *name, int *len) 
DECLSPEC_HIDDEN;
 
-#endif /* HHCTRL_STREAM_H */
+#endif
diff --git a/dll/win32/hhctrl.ocx/webbrowser.c 
b/dll/win32/hhctrl.ocx/webbrowser.c
index 0ffc69898b..e44c4ecd9d 100644
--- a/dll/win32/hhctrl.ocx/webbrowser.c
+++ b/dll/win32/hhctrl.ocx/webbrowser.c
@@ -19,8 +19,11 @@
  */
 
 #include "hhctrl.h"
+#include "resource.h"
 
-#include <mshtmhst.h>
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp);
 
 static inline WebBrowserContainer *impl_from_IOleClientSite(IOleClientSite 
*iface)
 {
diff --git a/media/doc/README.WINE b/media/doc/README.WINE
index fc1cce6951..49de8174aa 100644
--- a/media/doc/README.WINE
+++ b/media/doc/README.WINE
@@ -69,7 +69,7 @@ reactos/dll/win32/faultrep            # Synced to 
WineStaging-2.9
 reactos/dll/win32/fontsub             # Synced to WineStaging-2.9
 reactos/dll/win32/fusion              # Synced to WineStaging-3.3
 reactos/dll/win32/gdiplus             # Synced to WineStaging-3.3
-reactos/dll/win32/hhctrl.ocx          # Synced to Wine-3.0
+reactos/dll/win32/hhctrl.ocx          # Synced to WineStaging-3.3
 reactos/dll/win32/hlink               # Synced to Wine-3.0
 reactos/dll/win32/hnetcfg             # Synced to Wine-3.0
 reactos/dll/win32/httpapi             # Synced to WineStaging-2.9

Reply via email to