Nikolay Sivov : user32: Make it possible to create windows for redirected classes.

Alexandre Julliard julliard at winehq.org
Wed Jan 31 15:23:28 CST 2018


Module: wine
Branch: master
Commit: df715e5a9a1003e6fc4e0fd21cb671a22e46865a
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=df715e5a9a1003e6fc4e0fd21cb671a22e46865a

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Wed Jan 31 13:15:41 2018 +0300

user32: Make it possible to create windows for redirected classes.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/user32/class.c        | 2 +-
 dlls/user32/user_private.h | 2 ++
 dlls/user32/win.c          | 7 +++++--
 3 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/dlls/user32/class.c b/dlls/user32/class.c
index 8aa568d..a70bcb1 100644
--- a/dlls/user32/class.c
+++ b/dlls/user32/class.c
@@ -325,7 +325,7 @@ static void CLASS_FreeClass( CLASS *classPtr )
     USER_Unlock();
 }
 
-static const WCHAR *CLASS_GetVersionedName( const WCHAR *name )
+const WCHAR *CLASS_GetVersionedName( const WCHAR *name )
 {
     ACTCTX_SECTION_KEYED_DATA data;
     struct wndclass_redirect_data
diff --git a/dlls/user32/user_private.h b/dlls/user32/user_private.h
index 0ffdcdd..bf0e3c7 100644
--- a/dlls/user32/user_private.h
+++ b/dlls/user32/user_private.h
@@ -269,6 +269,8 @@ extern INT_PTR WINPROC_CallDlgProcW( DLGPROC func, HWND hwnd, UINT msg, WPARAM w
 extern BOOL WINPROC_call_window( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam,
                                  LRESULT *result, BOOL unicode, enum wm_char_mapping mapping ) DECLSPEC_HIDDEN;
 
+extern const WCHAR *CLASS_GetVersionedName(const WCHAR *classname) DECLSPEC_HIDDEN;
+
 /* message spy definitions */
 
 #define SPY_DISPATCHMESSAGE       0x0100
diff --git a/dlls/user32/win.c b/dlls/user32/win.c
index 382ca10..c3360f9 100644
--- a/dlls/user32/win.c
+++ b/dlls/user32/win.c
@@ -1333,13 +1333,16 @@ HWND WIN_CreateWindowEx( CREATESTRUCTW *cs, LPCWSTR className, HINSTANCE module,
     RECT rect;
     WND *wndPtr;
     HWND hwnd, parent, owner, top_child = 0;
+    const WCHAR *p = className;
     MDICREATESTRUCTW mdi_cs;
     CBT_CREATEWNDW cbtc;
     CREATESTRUCTW cbcs;
 
-    TRACE("%s %s ex=%08x style=%08x %d,%d %dx%d parent=%p menu=%p inst=%p params=%p\n",
+    className = CLASS_GetVersionedName(className);
+
+    TRACE("%s %s%s%s ex=%08x style=%08x %d,%d %dx%d parent=%p menu=%p inst=%p params=%p\n",
           unicode ? debugstr_w(cs->lpszName) : debugstr_a((LPCSTR)cs->lpszName),
-          debugstr_w(className),
+          debugstr_w(p), p != className ? "->" : "", p != className ? debugstr_w(className) : "",
           cs->dwExStyle, cs->style, cs->x, cs->y, cs->cx, cs->cy,
           cs->hwndParent, cs->hMenu, cs->hInstance, cs->lpCreateParams );
     if(TRACE_ON(win)) dump_window_styles( cs->style, cs->dwExStyle );




More information about the wine-cvs mailing list