aboutsummaryrefslogtreecommitdiff
path: root/src/platform/windows
diff options
context:
space:
mode:
Diffstat (limited to 'src/platform/windows')
-rw-r--r--src/platform/windows/win_ipc.c9
-rw-r--r--src/platform/windows/win_net.c3
2 files changed, 5 insertions, 7 deletions
diff --git a/src/platform/windows/win_ipc.c b/src/platform/windows/win_ipc.c
index 85e3dfca..bd9ce26d 100644
--- a/src/platform/windows/win_ipc.c
+++ b/src/platform/windows/win_ipc.c
@@ -333,9 +333,8 @@ nni_win_ipc_acc_finish(nni_win_event *evt, nni_aio *aio)
return;
}
- aio->a_pipe = pipe;
// What if the pipe is already finished?
- if (nni_aio_finish(aio, 0, 0) != 0) {
+ if (nni_aio_finish_pipe(aio, 0, pipe) != 0) {
nni_plat_ipc_pipe_fini(pipe);
}
}
@@ -391,7 +390,6 @@ nni_win_ipc_acc_start(nni_win_event *evt, nni_aio *aio)
void
nni_plat_ipc_ep_accept(nni_plat_ipc_ep *ep, nni_aio *aio)
{
- aio->a_pipe = NULL;
nni_win_event_submit(&ep->acc_ev, aio);
}
@@ -470,8 +468,9 @@ nni_win_ipc_conn_thr(void *arg)
((rv = nni_win_iocp_register(p)) != 0)) {
goto fail;
}
- aio->a_pipe = pipe;
- nni_aio_finish(aio, 0, 0);
+ if (rv = nni_aio_finish_pipe(aio, 0, pipe) != 0) {
+ nni_plat_ipc_pipe_fini(pipe);
+ }
continue;
fail:
diff --git a/src/platform/windows/win_net.c b/src/platform/windows/win_net.c
index 59fc0986..633dd256 100644
--- a/src/platform/windows/win_net.c
+++ b/src/platform/windows/win_net.c
@@ -544,8 +544,7 @@ nni_win_tcp_acc_finish(nni_win_event *evt, nni_aio *aio)
return;
}
- aio->a_pipe = pipe;
- if (nni_aio_finish(aio, 0, 0) != 0) {
+ if (nni_aio_finish_pipe(aio, 0, pipe) != 0) {
nni_plat_tcp_pipe_fini(pipe);
}
}