aboutsummaryrefslogtreecommitdiff
path: root/src/sp/protocol/pubsub0/sub.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/sp/protocol/pubsub0/sub.c')
-rw-r--r--src/sp/protocol/pubsub0/sub.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/sp/protocol/pubsub0/sub.c b/src/sp/protocol/pubsub0/sub.c
index cc1fc397..86f1d519 100644
--- a/src/sp/protocol/pubsub0/sub.c
+++ b/src/sp/protocol/pubsub0/sub.c
@@ -97,18 +97,12 @@ sub0_ctx_recv(void *arg, nni_aio *aio)
sub0_sock *sock = ctx->sock;
nni_msg *msg;
- if (nni_aio_begin(aio) != 0) {
- return;
- }
-
nni_mtx_lock(&sock->lk);
again:
if (nni_lmq_empty(&ctx->lmq)) {
- int rv;
- if ((rv = nni_aio_schedule(aio, sub0_ctx_cancel, ctx)) != 0) {
+ if (!nni_aio_start(aio, sub0_ctx_cancel, ctx)) {
nni_mtx_unlock(&sock->lk);
- nni_aio_finish_error(aio, rv);
return;
}
nni_list_append(&ctx->recv_queue, aio);