Instead of initiating the transition between DB & IO-Queue from within the applicatio...
[citadel.git] / citadel / modules / eventclient / serv_eventclient.c
index 4a27c2482effb42bd47f7cbb99054218d58e63c8..942234afdef080803b4eb519e8ca50d279731c93 100644 (file)
@@ -107,6 +107,8 @@ typedef struct _evcurl_global_data {
 ev_async WakeupCurl;
 evcurl_global_data global;
 
+eNextState QueueAnDBOperation(AsyncIO *IO);
+
 static void
 gotstatus(int nnrun)
 {
@@ -200,6 +202,11 @@ gotstatus(int nnrun)
                        switch(IO->SendDone(IO))
                        {
                        case eDBQuery:
+                               curl_easy_cleanup(IO->HttpReq.chnd);
+                               IO->HttpReq.chnd = NULL;
+                               FreeURL(&IO->ConnectMe);
+                               QueueAnDBOperation(IO);
+                               break;
                        case eSendDNSQuery:
                        case eReadDNSReply:
                        case eConnect: