summaryrefslogtreecommitdiff
path: root/src/lib/eldbus/eldbus_service.c
diff options
context:
space:
mode:
authorSebastian Dransfeld <sd@tango.flipp.net>2013-12-07 15:31:46 +0100
committerSebastian Dransfeld <sd@tango.flipp.net>2013-12-07 21:11:33 +0100
commit831d17a8e83f8b082a9683e6098dfbc3410436cb (patch)
tree334f9ed6d33b70268a90d939325697473e9e2d7a /src/lib/eldbus/eldbus_service.c
parentc5caea03e3b1fabeb53a771cfb03883df1bbfab7 (diff)
eldbus: unref msg on error
If we return here, the msg isn't sent, so unref it. Fixes CID 1039178
Diffstat (limited to 'src/lib/eldbus/eldbus_service.c')
-rw-r--r--src/lib/eldbus/eldbus_service.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/lib/eldbus/eldbus_service.c b/src/lib/eldbus/eldbus_service.c
index 693cdf3361..bb300c0865 100644
--- a/src/lib/eldbus/eldbus_service.c
+++ b/src/lib/eldbus/eldbus_service.c
@@ -1380,7 +1380,11 @@ eldbus_service_signal_emit(const Eldbus_Service_Interface *iface, unsigned int s
1380 va_start(ap, signal_id); 1380 va_start(ap, signal_id);
1381 r = eldbus_message_arguments_vappend(sig, signature, ap); 1381 r = eldbus_message_arguments_vappend(sig, signature, ap);
1382 va_end(ap); 1382 va_end(ap);
1383 EINA_SAFETY_ON_FALSE_RETURN_VAL(r, EINA_FALSE); 1383 if (!r)
1384 {
1385 eldbus_message_unref(sig);
1386 return EINA_FALSE;
1387 }
1384 1388
1385 eldbus_service_signal_send(iface, sig); 1389 eldbus_service_signal_send(iface, sig);
1386 return EINA_TRUE; 1390 return EINA_TRUE;