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
b7582525
Commit
b7582525
authored
Oct 29, 2012
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
user32: Don't flush window surfaces while waiting for a sent message reply.
parent
c24f074c
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
5 additions
and
6 deletions
+5
-6
message.c
dlls/user32/message.c
+4
-2
winproc.c
dlls/user32/winproc.c
+1
-4
No files found.
dlls/user32/message.c
View file @
b7582525
...
...
@@ -3682,8 +3682,8 @@ BOOL WINAPI DECLSPEC_HOTPATCH PeekMessageW( MSG *msg_out, HWND hwnd, UINT first,
if
(
!
peek_message
(
&
msg
,
hwnd
,
first
,
last
,
flags
,
0
))
{
if
(
flags
&
PM_NOYIELD
)
flush_window_surfaces
(
FALSE
);
else
wow_handlers
.
wait_message
(
0
,
NULL
,
0
,
0
,
0
);
flush_window_surfaces
(
!
(
flags
&
PM_NOYIELD
)
);
if
(
!
(
flags
&
PM_NOYIELD
))
wow_handlers
.
wait_message
(
0
,
NULL
,
0
,
0
,
0
);
return
FALSE
;
}
...
...
@@ -3739,6 +3739,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetMessageW( MSG *msg, HWND hwnd, UINT first, UINT
while
(
!
peek_message
(
msg
,
hwnd
,
first
,
last
,
PM_REMOVE
|
(
mask
<<
16
),
mask
))
{
flush_window_surfaces
(
TRUE
);
wow_handlers
.
wait_message
(
1
,
&
server_queue
,
INFINITE
,
mask
,
0
);
}
...
...
@@ -4071,6 +4072,7 @@ DWORD WINAPI MsgWaitForMultipleObjectsEx( DWORD count, CONST HANDLE *pHandles,
for
(
i
=
0
;
i
<
count
;
i
++
)
handles
[
i
]
=
pHandles
[
i
];
handles
[
count
]
=
get_server_queue_handle
();
flush_window_surfaces
(
TRUE
);
return
wow_handlers
.
wait_message
(
count
+
1
,
handles
,
timeout
,
mask
,
flags
);
}
...
...
dlls/user32/winproc.c
View file @
b7582525
...
...
@@ -1124,10 +1124,7 @@ static LRESULT WINAPI StaticWndProcW( HWND hwnd, UINT msg, WPARAM wParam, LPARAM
static
DWORD
wait_message
(
DWORD
count
,
CONST
HANDLE
*
handles
,
DWORD
timeout
,
DWORD
mask
,
DWORD
flags
)
{
DWORD
ret
;
flush_window_surfaces
(
TRUE
);
ret
=
USER_Driver
->
pMsgWaitForMultipleObjectsEx
(
count
,
handles
,
timeout
,
mask
,
flags
);
DWORD
ret
=
USER_Driver
->
pMsgWaitForMultipleObjectsEx
(
count
,
handles
,
timeout
,
mask
,
flags
);
if
(
ret
==
WAIT_TIMEOUT
&&
!
count
&&
!
timeout
)
NtYieldExecution
();
return
ret
;
}
...
...
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