chiark / gitweb /
resolved: fix crash when shutting down
authorLennart Poettering <lennart@poettering.net>
Mon, 18 May 2015 21:23:17 +0000 (23:23 +0200)
committerSven Eden <yamakuzure@gmx.net>
Tue, 14 Mar 2017 08:57:16 +0000 (09:57 +0100)
Reported by Cristian Rodríguez

http://lists.freedesktop.org/archives/systemd-devel/2015-May/031626.html

src/shared/prioq.c
src/shared/prioq.h

index 8af4c51c2f751336e2822a44a1c12e2257960761..b89888be0e8d5460313ffc3e9712856f214ce5d2 100644 (file)
@@ -45,12 +45,14 @@ Prioq *prioq_new(compare_func_t compare_func) {
         return q;
 }
 
-void prioq_free(Prioq *q) {
+Prioq* prioq_free(Prioq *q) {
         if (!q)
-                return;
+                return NULL;
 
         free(q->items);
         free(q);
+
+        return NULL;
 }
 
 int prioq_ensure_allocated(Prioq **q, compare_func_t compare_func) {
index d836b36cd9c6dc89e0b8fa58ceb09f3accbd0242..1c044b135ce7233e099aee073ce2ade552a7004e 100644 (file)
@@ -28,7 +28,7 @@ typedef struct Prioq Prioq;
 #define PRIOQ_IDX_NULL ((unsigned) -1)
 
 Prioq *prioq_new(compare_func_t compare);
-void prioq_free(Prioq *q);
+Prioq *prioq_free(Prioq *q);
 int prioq_ensure_allocated(Prioq **q, compare_func_t compare_func);
 
 int prioq_put(Prioq *q, void *data, unsigned *idx);