fix the linked list leak
authorJosé Bollo <jose.bollo@iot.bzh>
Thu, 12 May 2016 12:42:35 +0000 (14:42 +0200)
committerJosé Bollo <jose.bollo@iot.bzh>
Thu, 12 May 2016 12:42:35 +0000 (14:42 +0200)
Change-Id: I0a26ed98b400df3dfde07d86c058120c8d140329
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
src/afb-ws-json1.c

index 05c19e7..67ce2d8 100644 (file)
@@ -343,6 +343,14 @@ static void wsreq_addref(struct afb_wsreq *wsreq)
 static void wsreq_unref(struct afb_wsreq *wsreq)
 {
        if (--wsreq->refcount == 0) {
+               struct afb_wsreq **prv = &wsreq->ws->requests;
+               while(*prv != NULL) {
+                       if (*prv == wsreq) {
+                               *prv = wsreq->next;
+                               break;
+                       }
+                       prv = &(*prv)->next;
+               }
                afb_context_disconnect(&wsreq->context);
                free(wsreq->text);
                free(wsreq);