chiark / gitweb /
bus: when we _unref() a NULL pointer, don't use assert_return()
authorLennart Poettering <lennart@poettering.net>
Tue, 10 Dec 2013 20:38:04 +0000 (20:38 +0000)
committerLennart Poettering <lennart@poettering.net>
Tue, 10 Dec 2013 20:38:04 +0000 (20:38 +0000)
We support unreffing NULL pointers just fine and we shouldn't pay the
_unlikely_() price for it, not get a debug message if we do, hence let's
not use assert_return() here.

src/libsystemd-bus/bus-creds.c
src/libsystemd-bus/bus-message.c
src/libsystemd-bus/sd-bus.c
src/libsystemd-bus/sd-event.c

index 1eb0e02..9d90c49 100644 (file)
@@ -72,7 +72,9 @@ _public_ sd_bus_creds *sd_bus_creds_ref(sd_bus_creds *c) {
 }
 
 _public_ sd_bus_creds *sd_bus_creds_unref(sd_bus_creds *c) {
-        assert_return(c, NULL);
+
+        if (!c)
+                return NULL;
 
         if (c->allocated) {
                 assert(c->n_ref > 0);
index 9e71271..0f19ee2 100644 (file)
@@ -791,7 +791,9 @@ _public_ sd_bus_message* sd_bus_message_ref(sd_bus_message *m) {
 }
 
 _public_ sd_bus_message* sd_bus_message_unref(sd_bus_message *m) {
-        assert_return(m, NULL);
+
+        if (!m)
+                return NULL;
 
         assert(m->n_ref > 0);
         m->n_ref--;
index 81bfe0d..91fac48 100644 (file)
@@ -1214,7 +1214,9 @@ _public_ sd_bus *sd_bus_ref(sd_bus *bus) {
 }
 
 _public_ sd_bus *sd_bus_unref(sd_bus *bus) {
-        assert_return(bus, NULL);
+
+        if (!bus)
+                return NULL;
 
         if (REFCNT_DEC(bus->n_ref) <= 0)
                 bus_free(bus);
index b5ddf71..282e914 100644 (file)
@@ -384,7 +384,9 @@ _public_ sd_event* sd_event_ref(sd_event *e) {
 }
 
 _public_ sd_event* sd_event_unref(sd_event *e) {
-        assert_return(e, NULL);
+
+        if (!e)
+                return NULL;
 
         assert(e->n_ref >= 1);
         e->n_ref--;
@@ -973,7 +975,9 @@ _public_ sd_event_source* sd_event_source_ref(sd_event_source *s) {
 }
 
 _public_ sd_event_source* sd_event_source_unref(sd_event_source *s) {
-        assert_return(s, NULL);
+
+        if (!s)
+                return NULL;
 
         assert(s->n_ref >= 1);
         s->n_ref--;