From 149b7a41b77a3cc0752fe88090e60ce7dae90a85 Mon Sep 17 00:00:00 2001 From: Wilfried Goesgens Date: Sat, 2 Mar 2013 15:35:30 +0100 Subject: [PATCH] EVENT_CLIENT: when handing over to the DB-Queue, don't re-start IO-Watchers. --- citadel/event_client.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/citadel/event_client.c b/citadel/event_client.c index 37dcb9e46..c633f5357 100644 --- a/citadel/event_client.c +++ b/citadel/event_client.c @@ -370,7 +370,22 @@ void PostInbound(AsyncIO *IO) case eSendMore: assert(IO->SendDone); IO->NextState = IO->SendDone(IO); - ev_io_start(event_base, &IO->send_event); + switch (IO->NextState) + { + case eSendFile: + case eSendReply: + case eSendMore: + case eReadMessage: + case eReadPayload: + case eReadMore: + case eReadFile: + ev_io_start(event_base, &IO->send_event); + break; + case eDBQuery: + StopClientWatchers(IO, 0); + default: + break; + } break; case eReadPayload: case eReadMore: -- 2.30.2