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

commit fc19c80d5239ca61c38fb8a99746a842b19eebff
Author:     Amine Khaldi <[email protected]>
AuthorDate: Thu Mar 15 12:26:26 2018 +0100
Commit:     Amine Khaldi <[email protected]>
CommitDate: Thu Mar 15 12:26:26 2018 +0100

    [IEFRAME] Sync with Wine Staging 3.3. CORE-14434
---
 dll/win32/ieframe/CMakeLists.txt  |  4 +-
 dll/win32/ieframe/classinfo.c     |  4 ++
 dll/win32/ieframe/client.c        |  9 +++++
 dll/win32/ieframe/dochost.c       |  9 ++++-
 dll/win32/ieframe/events.c        |  6 +++
 dll/win32/ieframe/frame.c         |  4 ++
 dll/win32/ieframe/ie.c            |  4 ++
 dll/win32/ieframe/ieframe.h       | 77 +++++++++++----------------------------
 dll/win32/ieframe/ieframe.rc      |  5 +--
 dll/win32/ieframe/ieframe_main.c  | 10 ++++-
 dll/win32/ieframe/iehtmlwnd.c     |  4 ++
 dll/win32/ieframe/iexplore.c      | 28 +++++++++++---
 dll/win32/ieframe/intshcut.c      | 16 ++++++++
 dll/win32/ieframe/navigate.c      | 15 +++++++-
 dll/win32/ieframe/oleobject.c     | 10 +++++
 dll/win32/ieframe/persist.c       |  4 ++
 dll/win32/ieframe/precomp.h       | 31 ++++++++++++++++
 dll/win32/ieframe/resource.h      |  3 ++
 dll/win32/ieframe/shellbrowser.c  |  8 +++-
 dll/win32/ieframe/shelluihelper.c |  4 ++
 dll/win32/ieframe/urlhist.c       |  5 ++-
 dll/win32/ieframe/view.c          |  6 ++-
 dll/win32/ieframe/webbrowser.c    |  7 ++++
 media/doc/README.WINE             |  2 +-
 24 files changed, 202 insertions(+), 73 deletions(-)

diff --git a/dll/win32/ieframe/CMakeLists.txt b/dll/win32/ieframe/CMakeLists.txt
index 3cbc2acb26..bf7b6034cd 100644
--- a/dll/win32/ieframe/CMakeLists.txt
+++ b/dll/win32/ieframe/CMakeLists.txt
@@ -22,7 +22,7 @@ list(APPEND SOURCE
     urlhist.c
     view.c
     webbrowser.c
-    ieframe.h
+    precomp.h
     ${CMAKE_CURRENT_BINARY_DIR}/ieframe_stubs.c)
 
 add_library(ieframe SHARED
@@ -42,5 +42,5 @@ add_dependencies(ieframe stdole2)
 set_module_type(ieframe win32dll)
 target_link_libraries(ieframe uuid wine)
 add_importlibs(ieframe urlmon shell32 comctl32 shlwapi oleaut32 ole32 user32 
gdi32 advapi32 msvcrt kernel32 ntdll)
-add_pch(ieframe ieframe.h SOURCE)
+add_pch(ieframe precomp.h SOURCE)
 add_cd_file(TARGET ieframe DESTINATION reactos/system32 FOR all)
diff --git a/dll/win32/ieframe/classinfo.c b/dll/win32/ieframe/classinfo.c
index 267064b00d..3fa77bb6ce 100644
--- a/dll/win32/ieframe/classinfo.c
+++ b/dll/win32/ieframe/classinfo.c
@@ -20,6 +20,10 @@
 
 #include "ieframe.h"
 
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 /**********************************************************************
  * Implement the IProvideClassInfo2 interface
  */
diff --git a/dll/win32/ieframe/client.c b/dll/win32/ieframe/client.c
index 36f1a59331..4846e28a05 100644
--- a/dll/win32/ieframe/client.c
+++ b/dll/win32/ieframe/client.c
@@ -16,8 +16,17 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
+#include <stdio.h>
+
 #include "ieframe.h"
 
+#include "mshtmdid.h"
+#include "idispids.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 static inline DocHost *impl_from_IOleClientSite(IOleClientSite *iface)
 {
     return CONTAINING_RECORD(iface, DocHost, IOleClientSite_iface);
diff --git a/dll/win32/ieframe/dochost.c b/dll/win32/ieframe/dochost.c
index 6213aa4d67..424868d62e 100644
--- a/dll/win32/ieframe/dochost.c
+++ b/dll/win32/ieframe/dochost.c
@@ -18,7 +18,14 @@
 
 #include "ieframe.h"
 
-#include <initguid.h>
+#include "exdispid.h"
+#include "mshtml.h"
+#include "perhist.h"
+#include "initguid.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
 
 DEFINE_OLEGUID(CGID_DocHostCmdPriv, 0x000214D4L, 0, 0);
 
diff --git a/dll/win32/ieframe/events.c b/dll/win32/ieframe/events.c
index 17bc7f1ce8..eef1c17e6c 100644
--- a/dll/win32/ieframe/events.c
+++ b/dll/win32/ieframe/events.c
@@ -22,8 +22,14 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
+#include <string.h>
+
 #include "ieframe.h"
 
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 struct ConnectionPoint {
     IConnectionPoint IConnectionPoint_iface;
 
diff --git a/dll/win32/ieframe/frame.c b/dll/win32/ieframe/frame.c
index 73fea3786e..d86c2714c9 100644
--- a/dll/win32/ieframe/frame.c
+++ b/dll/win32/ieframe/frame.c
@@ -18,6 +18,10 @@
 
 #include "ieframe.h"
 
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 static inline DocHost *impl_from_IOleInPlaceFrame(IOleInPlaceFrame *iface)
 {
     return CONTAINING_RECORD(iface, DocHost, IOleInPlaceFrame_iface);
diff --git a/dll/win32/ieframe/ie.c b/dll/win32/ieframe/ie.c
index dc8e329330..d7e3aa150c 100644
--- a/dll/win32/ieframe/ie.c
+++ b/dll/win32/ieframe/ie.c
@@ -18,6 +18,10 @@
 
 #include "ieframe.h"
 
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 static inline InternetExplorer *impl_from_IWebBrowser2(IWebBrowser2 *iface)
 {
     return CONTAINING_RECORD(iface, InternetExplorer, IWebBrowser2_iface);
diff --git a/dll/win32/ieframe/ieframe.h b/dll/win32/ieframe/ieframe.h
index bab08f4f6e..fc56da9e46 100644
--- a/dll/win32/ieframe/ieframe.h
+++ b/dll/win32/ieframe/ieframe.h
@@ -18,44 +18,33 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-#ifndef _IEFRAME_H_
-#define _IEFRAME_H_
+#pragma once
 
-#include <stdio.h>
-
-#define WIN32_NO_STATUS
-#define _INC_WINDOWS
-#define COM_NO_WINDOWS_H
+#include <stdarg.h>
 
 #define COBJMACROS
-#define NONAMELESSUNION
-#define NONAMELESSSTRUCT
 
-#include <windef.h>
-#include <winbase.h>
-#include <wingdi.h>
-#include <winreg.h>
+#include "windef.h"
+#include "winbase.h"
+#include "wingdi.h"
+#include "winuser.h"
+#ifdef __REACTOS__
 #include <wincon.h>
-#include <shlobj.h>
-#include <mshtmhst.h>
-#include <mshtmdid.h>
-#include <exdispid.h>
-#include <htiface.h>
-#include <idispids.h>
-#include <intshcut.h>
-#include <perhist.h>
-#include <shellapi.h>
-#include <shlwapi.h>
-#include <shdeprecated.h>
-#include <docobjectservice.h>
-
-#include <wine/unicode.h>
-#include <wine/list.h>
-
-#include <wine/debug.h>
-WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
-
-#include "resource.h"
+#endif
+
+#include "ole2.h"
+#include "olectl.h"
+#include "shlobj.h"
+#include "mshtmhst.h"
+#include "exdisp.h"
+#include "hlink.h"
+#include "htiface.h"
+#include "shdeprecated.h"
+#include "docobjectservice.h"
+
+#include "wine/unicode.h"
+#include "wine/heap.h"
+#include "wine/list.h"
 
 typedef struct ConnectionPoint ConnectionPoint;
 typedef struct DocHost DocHost;
@@ -351,26 +340,6 @@ static inline void unlock_module(void) {
     InterlockedDecrement(&module_ref);
 }
 
-static inline void* __WINE_ALLOC_SIZE(1) heap_alloc(size_t size)
-{
-    return HeapAlloc(GetProcessHeap(), 0, size);
-}
-
-static inline void* __WINE_ALLOC_SIZE(1) heap_alloc_zero(size_t size)
-{
-    return HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, size);
-}
-
-static inline void* __WINE_ALLOC_SIZE(2) heap_realloc(void *mem, size_t size)
-{
-    return HeapReAlloc(GetProcessHeap(), 0, mem, size);
-}
-
-static inline BOOL heap_free(void *mem)
-{
-    return HeapFree(GetProcessHeap(), 0, mem);
-}
-
 static inline LPWSTR heap_strdupW(LPCWSTR str)
 {
     LPWSTR ret = NULL;
@@ -416,5 +385,3 @@ static inline LPSTR co_strdupWtoA(LPCWSTR str)
         WideCharToMultiByte(CP_ACP, 0, str, -1, ret, len, 0, 0);
     return ret;
 }
-
-#endif /* _IEFRAME_H_ */
diff --git a/dll/win32/ieframe/ieframe.rc b/dll/win32/ieframe/ieframe.rc
index 685c70470c..2c90628291 100644
--- a/dll/win32/ieframe/ieframe.rc
+++ b/dll/win32/ieframe/ieframe.rc
@@ -16,9 +16,6 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-#include <windef.h>
-#include <winuser.h>
-
 #include "resource.h"
 
 #include <reactos/manifest_dll.rc>
@@ -77,7 +74,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
 #define WINE_PRODUCTVERSION_STR "8.0.6001.18702"
 #define WINE_EXTRAVALUES VALUE "OLESelfRegister",""
 
-#include <wine/wine_common_ver.rc>
+#include "wine/wine_common_ver.rc"
 
 /* @makedep: ietoolbar.bmp */
 IDB_IETOOLBAR BITMAP "resources/ietoolbar.bmp"
diff --git a/dll/win32/ieframe/ieframe_main.c b/dll/win32/ieframe/ieframe_main.c
index f1fddab0b7..a862f9afe5 100644
--- a/dll/win32/ieframe/ieframe_main.c
+++ b/dll/win32/ieframe/ieframe_main.c
@@ -18,7 +18,15 @@
 
 #include "ieframe.h"
 
-#include <rpcproxy.h>
+#include "initguid.h"
+#include "rpcproxy.h"
+#include "shlguid.h"
+#include "isguids.h"
+#include "ieautomation.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
 
 LONG module_ref = 0;
 HINSTANCE ieframe_instance;
diff --git a/dll/win32/ieframe/iehtmlwnd.c b/dll/win32/ieframe/iehtmlwnd.c
index 9ab2e74db5..fe97c6373d 100644
--- a/dll/win32/ieframe/iehtmlwnd.c
+++ b/dll/win32/ieframe/iehtmlwnd.c
@@ -18,6 +18,10 @@
 
 #include "ieframe.h"
 
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 static inline IEHTMLWindow *impl_from_IHTMLWindow2(IHTMLWindow2 *iface)
 {
     return CONTAINING_RECORD(iface, IEHTMLWindow, IHTMLWindow2_iface);
diff --git a/dll/win32/ieframe/iexplore.c b/dll/win32/ieframe/iexplore.c
index 1e93ea945c..3d581732ad 100644
--- a/dll/win32/ieframe/iexplore.c
+++ b/dll/win32/ieframe/iexplore.c
@@ -19,13 +19,31 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-#include "ieframe.h"
+#define COBJMACROS
 
-#include <mshtmcid.h>
-#include <ddeml.h>
+#include <stdarg.h>
 
-#include <initguid.h>
-#include <ieautomation.h>
+#include "ieframe.h"
+#include "resource.h"
+
+#include "winuser.h"
+#include "wingdi.h"
+#include "winnls.h"
+#include "ole2.h"
+#include "exdisp.h"
+#include "oleidl.h"
+
+#include "mshtmcid.h"
+#include "shellapi.h"
+#include "winreg.h"
+#include "shlwapi.h"
+#include "intshcut.h"
+#include "ddeml.h"
+#include "ieautomation.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
 
 #define IDI_APPICON 1
 
diff --git a/dll/win32/ieframe/intshcut.c b/dll/win32/ieframe/intshcut.c
index df357d4865..2376b1b424 100644
--- a/dll/win32/ieframe/intshcut.c
+++ b/dll/win32/ieframe/intshcut.c
@@ -27,8 +27,24 @@
  * The installer for the Zuma Deluxe Popcap game is good for testing.
  */
 
+#include <stdio.h>
+
+#define NONAMELESSUNION
+
 #include "ieframe.h"
 
+#include "shlobj.h"
+#include "shobjidl.h"
+#include "intshcut.h"
+#include "shellapi.h"
+#include "winreg.h"
+#include "shlwapi.h"
+#include "shlguid.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 typedef struct
 {
     IUniformResourceLocatorA IUniformResourceLocatorA_iface;
diff --git a/dll/win32/ieframe/navigate.c b/dll/win32/ieframe/navigate.c
index 39130e09f6..658857fadd 100644
--- a/dll/win32/ieframe/navigate.c
+++ b/dll/win32/ieframe/navigate.c
@@ -16,9 +16,22 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
+#define NONAMELESSUNION
+
 #include "ieframe.h"
 
-#include <wininet.h>
+#include "exdispid.h"
+#include "shellapi.h"
+#include "winreg.h"
+#include "shlwapi.h"
+#include "wininet.h"
+#include "mshtml.h"
+#include "perhist.h"
+#include "resource.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
 
 static const WCHAR emptyW[] = {0};
 
diff --git a/dll/win32/ieframe/oleobject.c b/dll/win32/ieframe/oleobject.c
index 01e1821df7..1ff9a92666 100644
--- a/dll/win32/ieframe/oleobject.c
+++ b/dll/win32/ieframe/oleobject.c
@@ -23,8 +23,18 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
+#include <string.h>
+
 #include "ieframe.h"
 
+#include "htiframe.h"
+#include "idispids.h"
+#include "mshtmdid.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 /* shlwapi.dll */
 HWND WINAPI SHSetParentHwnd(HWND hWnd, HWND hWndParent);
 
diff --git a/dll/win32/ieframe/persist.c b/dll/win32/ieframe/persist.c
index e09f2045e0..4c890d7ebf 100644
--- a/dll/win32/ieframe/persist.c
+++ b/dll/win32/ieframe/persist.c
@@ -21,6 +21,10 @@
 
 #include "ieframe.h"
 
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 /**********************************************************************
  * Implement the IPersistStorage interface
  */
diff --git a/dll/win32/ieframe/precomp.h b/dll/win32/ieframe/precomp.h
new file mode 100644
index 0000000000..98cb77ff39
--- /dev/null
+++ b/dll/win32/ieframe/precomp.h
@@ -0,0 +1,31 @@
+
+#ifndef _IEFRAME_PRECOMP_H_
+#define _IEFRAME_PRECOMP_H_
+
+#include <stdio.h>
+
+#define WIN32_NO_STATUS
+#define _INC_WINDOWS
+#define COM_NO_WINDOWS_H
+
+#define NONAMELESSUNION
+#define NONAMELESSSTRUCT
+
+#include "ieframe.h"
+
+#include <wingdi.h>
+#include <winreg.h>
+#include <wincon.h>
+#include <mshtmdid.h>
+#include <exdispid.h>
+#include <idispids.h>
+#include <intshcut.h>
+#include <perhist.h>
+#include <shellapi.h>
+#include <shlwapi.h>
+
+#include <wine/debug.h>
+
+#include "resource.h"
+
+#endif /* !_IEFRAME_PRECOMP_H_ */
diff --git a/dll/win32/ieframe/resource.h b/dll/win32/ieframe/resource.h
index 81af1582d9..00c79beee7 100644
--- a/dll/win32/ieframe/resource.h
+++ b/dll/win32/ieframe/resource.h
@@ -20,6 +20,9 @@
 
 #pragma once
 
+#include <windef.h>
+#include <winuser.h>
+
 #define IDR_BROWSE_MAIN_MENU           1000
 #define IDD_BROWSE_OPEN                1001
 #define IDC_BROWSE_OPEN_URL            1002
diff --git a/dll/win32/ieframe/shellbrowser.c b/dll/win32/ieframe/shellbrowser.c
index 11ce0736d8..f75689e49a 100644
--- a/dll/win32/ieframe/shellbrowser.c
+++ b/dll/win32/ieframe/shellbrowser.c
@@ -19,9 +19,15 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
+#include <assert.h>
+
 #include "ieframe.h"
+#include "exdispid.h"
+#include "shlwapi.h"
 
-#include <assert.h>
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
 
 static inline ShellBrowser *impl_from_IShellBrowser(IShellBrowser *iface)
 {
diff --git a/dll/win32/ieframe/shelluihelper.c 
b/dll/win32/ieframe/shelluihelper.c
index b6c70300d6..cc636f6bdb 100644
--- a/dll/win32/ieframe/shelluihelper.c
+++ b/dll/win32/ieframe/shelluihelper.c
@@ -18,6 +18,10 @@
 
 #include "ieframe.h"
 
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 struct ShellUIHelper {
     IShellUIHelper2 IShellUIHelper2_iface;
     LONG ref;
diff --git a/dll/win32/ieframe/urlhist.c b/dll/win32/ieframe/urlhist.c
index e15e312111..d963d9517c 100644
--- a/dll/win32/ieframe/urlhist.c
+++ b/dll/win32/ieframe/urlhist.c
@@ -17,8 +17,11 @@
  */
 
 #include "ieframe.h"
+#include "urlhist.h"
 
-#include <urlhist.h>
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
 
 static HRESULT WINAPI UrlHistoryStg_QueryInterface(IUrlHistoryStg2 *iface, 
REFIID riid, void **ppv)
 {
diff --git a/dll/win32/ieframe/view.c b/dll/win32/ieframe/view.c
index 021dd1bc77..546e2511a3 100644
--- a/dll/win32/ieframe/view.c
+++ b/dll/win32/ieframe/view.c
@@ -19,6 +19,10 @@
 
 #include "ieframe.h"
 
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 /**********************************************************************
  * Implement the IViewObject interface
  */
@@ -56,7 +60,7 @@ static HRESULT WINAPI ViewObject_Draw(IViewObject2 *iface, 
DWORD dwDrawAspect,
     FIXME("(%p)->(%d %d %p %p %p %p %p %p %p %08lx)\n", This, dwDrawAspect, 
lindex,
             pvAspect, ptd, hdcTargetDev, hdcDraw, lprcBounds, lprcWBounds, 
pfnContinue,
             dwContinue);
-    return E_NOTIMPL;
+    return S_OK;
 }
 
 static HRESULT WINAPI ViewObject_GetColorSet(IViewObject2 *iface, DWORD 
dwAspect,
diff --git a/dll/win32/ieframe/webbrowser.c b/dll/win32/ieframe/webbrowser.c
index 88abd89f74..03acf38869 100644
--- a/dll/win32/ieframe/webbrowser.c
+++ b/dll/win32/ieframe/webbrowser.c
@@ -21,6 +21,13 @@
 
 #include "ieframe.h"
 
+#include "exdispid.h"
+#include "mshtml.h"
+
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
+
 static inline WebBrowser *impl_from_IWebBrowser2(IWebBrowser2 *iface)
 {
     return CONTAINING_RECORD(iface, WebBrowser, IWebBrowser2_iface);
diff --git a/media/doc/README.WINE b/media/doc/README.WINE
index 0fdb236751..24ceb481b9 100644
--- a/media/doc/README.WINE
+++ b/media/doc/README.WINE
@@ -74,7 +74,7 @@ reactos/dll/win32/hlink               # Synced to 
WineStaging-3.3
 reactos/dll/win32/hnetcfg             # Synced to WineStaging-3.3
 reactos/dll/win32/httpapi             # Synced to WineStaging-3.3
 reactos/dll/win32/iccvid              # Synced to WineStaging-3.3
-reactos/dll/win32/ieframe             # Synced to Wine-3.0
+reactos/dll/win32/ieframe             # Synced to WineStaging-3.3
 reactos/dll/win32/imaadp32.acm        # Synced to WineStaging-2.16
 reactos/dll/win32/imagehlp            # Synced to Wine-3.0
 reactos/dll/win32/imm32               # Synced to Wine-2.22

Reply via email to