]> git.lizzy.rs Git - dragonstd.git/blobdiff - refcount.c
Use void pointers for callback args
[dragonstd.git] / refcount.c
index 3b36ac7ca71812e65023d7e34f3b16b5e157dc09..95d896b3d10c545b570c5e381224b402b787c349 100644 (file)
@@ -1,6 +1,7 @@
+#include "bits/callback.h" // for SingleCallback
 #include "refcount.h"
 
-void refcount_ini(Refcount *refcount, void *obj, SingleCallback del)
+void refcount_ini(Refcount *refcount, void *obj, void *del)
 {
        refcount->obj = obj;
        refcount->del = del;
@@ -33,7 +34,7 @@ void refcount_drp(Refcount *refcount)
        pthread_mutex_unlock(&refcount->mtx);
 
        if (!count)
-               refcount->del(refcount->obj);
+               ((SingleCallback) refcount->del)(refcount->obj);
 }
 
 void *refcount_obj(Refcount *refcount)