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
9b0c222f
Commit
9b0c222f
authored
Nov 07, 2017
by
Dmitry Timoshkov
Committed by
Alexandre Julliard
Nov 13, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
server: Deliver an async io APC to any thread alive in the process.
Signed-off-by:
Dmitry Timoshkov
<
dmitry@baikal.ru
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
288814a4
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
2 additions
and
6 deletions
+2
-6
sock.c
dlls/ws2_32/tests/sock.c
+1
-5
async.c
server/async.c
+1
-1
No files found.
dlls/ws2_32/tests/sock.c
View file @
9b0c222f
...
...
@@ -11292,15 +11292,13 @@ static void iocp_async_read_thread_closesocket(SOCKET src)
ok
(
!
ret
,
"got %d
\n
"
,
ret
);
todo_wine
ok
(
GetLastError
()
==
ERROR_CONNECTION_ABORTED
||
GetLastError
()
==
ERROR_NETNAME_DELETED
/* XP */
,
"got %u
\n
"
,
GetLastError
());
todo_wine
ok
(
!
bytes
,
"got bytes %u
\n
"
,
bytes
);
todo_wine
ok
(
key
==
0x12345678
,
"got key %#lx
\n
"
,
key
);
todo_wine
ok
(
ovl_iocp
==
&
recv_info
.
ovl
,
"got ovl %p
\n
"
,
ovl_iocp
);
if
(
ovl_iocp
)
{
ok
(
!
ovl_iocp
->
InternalHigh
,
"got %#lx
\n
"
,
ovl_iocp
->
InternalHigh
);
todo_wine
ok
(
ovl_iocp
->
Internal
==
(
ULONG
)
STATUS_CONNECTION_ABORTED
||
ovl_iocp
->
Internal
==
(
ULONG
)
STATUS_LOCAL_DISCONNECT
/* XP */
,
"got %#lx
\n
"
,
ovl_iocp
->
Internal
);
}
...
...
@@ -11417,7 +11415,6 @@ static void iocp_async_read_thread(SOCKET src, SOCKET dst)
Sleep
(
100
);
memset
(
&
msg
,
0
,
sizeof
(
msg
));
ret
=
PeekMessageA
(
&
msg
,
hwnd
,
WM_SOCKET
,
WM_SOCKET
,
PM_REMOVE
);
todo_wine
ok
(
!
ret
||
broken
(
msg
.
hwnd
==
hwnd
)
/* XP */
,
"got %04x,%08lx,%08lx
\n
"
,
msg
.
message
,
msg
.
wParam
,
msg
.
lParam
);
if
(
ret
)
/* document XP behaviour */
{
...
...
@@ -11432,7 +11429,6 @@ todo_wine
ovl_iocp
=
(
void
*
)
0xdeadbeef
;
SetLastError
(
0xdeadbeef
);
ret
=
GetQueuedCompletionStatus
(
port
,
&
bytes
,
&
key
,
&
ovl_iocp
,
100
);
todo_wine
ok
(
ret
||
broken
(
GetLastError
()
==
WAIT_TIMEOUT
)
/* XP */
,
"got %u
\n
"
,
GetLastError
());
if
(
ret
)
{
...
...
server/async.c
View file @
9b0c222f
...
...
@@ -167,7 +167,7 @@ void async_terminate( struct async *async, unsigned int status )
data
.
async_io
.
user
=
async
->
data
.
user
;
data
.
async_io
.
sb
=
async
->
data
.
iosb
;
data
.
async_io
.
status
=
status
;
thread_queue_apc
(
NULL
,
async
->
thread
,
&
async
->
obj
,
&
data
);
thread_queue_apc
(
async
->
thread
->
process
,
async
->
thread
,
&
async
->
obj
,
&
data
);
}
else
async_set_result
(
&
async
->
obj
,
STATUS_SUCCESS
,
0
);
}
...
...
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