Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
21c8ff87
Commit
21c8ff87
authored
May 06, 2022
by
Jacek Caban
Committed by
Alexandre Julliard
May 06, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
win32u: Allow NULL cbtc in NtUserCreateWindowEx.
Signed-off-by:
Jacek Caban
<
jacek@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
1e2bc2f5
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
6 deletions
+19
-6
window.c
dlls/win32u/window.c
+19
-6
No files found.
dlls/win32u/window.c
View file @
21c8ff87
...
...
@@ -4845,9 +4845,10 @@ HWND WINAPI NtUserCreateWindowEx( DWORD ex_style, UNICODE_STRING *class_name,
HWND
parent
,
HMENU
menu
,
HINSTANCE
instance
,
void
*
params
,
DWORD
flags
,
CBT_CREATEWNDW
*
cbtc
,
DWORD
unk
,
BOOL
ansi
)
{
CREATESTRUCTW
cs
,
*
client_cs
=
cbtc
->
lpcs
;
CREATESTRUCTW
cs
,
*
client_cs
,
cs_buf
;
UINT
win_dpi
,
thread_dpi
=
get_thread_dpi
();
DPI_AWARENESS_CONTEXT
context
;
CBT_CREATEWNDW
cbtc_buf
;
HWND
hwnd
,
owner
=
0
;
INT
sw
=
SW_SHOW
;
RECT
rect
;
...
...
@@ -4855,8 +4856,24 @@ HWND WINAPI NtUserCreateWindowEx( DWORD ex_style, UNICODE_STRING *class_name,
static
const
WCHAR
messageW
[]
=
{
'M'
,
'e'
,
's'
,
's'
,
'a'
,
'g'
,
'e'
};
/* FIXME: We should pass a packed struct to client instead of using client_cs */
if
(
cbtc
)
{
client_cs
=
cbtc
->
lpcs
;
cs
.
lpszName
=
client_cs
->
lpszName
;
cs
.
lpszClass
=
client_cs
->
lpszClass
;
cs
.
hInstance
=
client_cs
->
hInstance
;
/* may be different than instance for win16 */
}
else
{
cbtc
=
&
cbtc_buf
;
client_cs
=
cbtc
->
lpcs
=
&
cs_buf
;
cs
.
lpszName
=
window_name
?
window_name
->
Buffer
:
NULL
;
cs
.
lpszClass
=
class_name
->
Buffer
;
cs
.
hInstance
=
instance
;
}
cs
.
lpCreateParams
=
params
;
cs
.
hInstance
=
client_cs
->
hInstance
;
/* may be different than instance for win16 */
cs
.
hMenu
=
menu
;
cs
.
hwndParent
=
parent
;
cs
.
style
=
style
;
...
...
@@ -4865,10 +4882,6 @@ HWND WINAPI NtUserCreateWindowEx( DWORD ex_style, UNICODE_STRING *class_name,
cs
.
y
=
y
;
cs
.
cx
=
cx
;
cs
.
cy
=
cy
;
/* We use client_cs to pass original class and name pointers,
* that's probably not how native handles it. */
cs
.
lpszName
=
client_cs
->
lpszName
;
cs
.
lpszClass
=
client_cs
->
lpszClass
;
/* Find the parent window */
if
(
parent
==
HWND_MESSAGE
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment