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
841214dd
Commit
841214dd
authored
Nov 21, 2012
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
user32: Don't check for driver events before normal messages in PeekMessage.
parent
8ba4c316
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
11 additions
and
5 deletions
+11
-5
message.c
dlls/user32/message.c
+10
-5
msg.c
dlls/user32/tests/msg.c
+1
-0
No files found.
dlls/user32/message.c
View file @
841214dd
...
...
@@ -3681,14 +3681,19 @@ BOOL WINAPI DECLSPEC_HOTPATCH PeekMessageW( MSG *msg_out, HWND hwnd, UINT first,
USER_CheckNotLock
();
/* check for graphics events */
USER_Driver
->
pMsgWaitForMultipleObjectsEx
(
0
,
NULL
,
0
,
QS_ALLINPUT
,
0
);
if
(
!
peek_message
(
&
msg
,
hwnd
,
first
,
last
,
flags
,
0
))
{
DWORD
ret
;
flush_window_surfaces
(
!
(
flags
&
PM_NOYIELD
)
);
if
(
!
(
flags
&
PM_NOYIELD
))
wow_handlers
.
wait_message
(
0
,
NULL
,
0
,
0
,
0
);
return
FALSE
;
if
(
flags
&
PM_NOYIELD
)
ret
=
USER_Driver
->
pMsgWaitForMultipleObjectsEx
(
0
,
NULL
,
0
,
QS_ALLINPUT
,
0
);
else
ret
=
wow_handlers
.
wait_message
(
0
,
NULL
,
0
,
0
,
0
);
/* if we received driver events, check again for a pending message */
if
(
ret
==
WAIT_TIMEOUT
||
!
peek_message
(
&
msg
,
hwnd
,
first
,
last
,
flags
,
0
))
return
FALSE
;
}
/* copy back our internal safe copy of message data to msg_out.
...
...
dlls/user32/tests/msg.c
View file @
841214dd
...
...
@@ -6795,6 +6795,7 @@ static void test_interthread_messages(void)
wnd_event
.
hwnd
=
CreateWindowExA
(
0
,
"TestParentClass"
,
"Test parent"
,
WS_OVERLAPPEDWINDOW
|
WS_VISIBLE
,
100
,
100
,
200
,
200
,
0
,
0
,
0
,
NULL
);
ok
(
wnd_event
.
hwnd
!=
0
,
"Failed to create parent window
\n
"
);
flush_events
();
flush_sequence
();
log_all_parent_messages
++
;
wnd_event
.
start_event
=
CreateEventA
(
NULL
,
TRUE
,
FALSE
,
NULL
);
...
...
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