X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flogin%2Flogind-seat-dbus.c;h=585e0c15c33feed5c6d343ed687b5252ed077fb6;hp=7833d70a03425e8c8aa2025501afc79c73a2dee4;hb=ce0fc5f5f6debc6e37ac3ab0a3ea1c9c35b3ed99;hpb=f1a8e221ecacea23883df57951e291a910463948;ds=sidebyside diff --git a/src/login/logind-seat-dbus.c b/src/login/logind-seat-dbus.c index 7833d70a0..585e0c15c 100644 --- a/src/login/logind-seat-dbus.c +++ b/src/login/logind-seat-dbus.c @@ -260,7 +260,7 @@ static DBusHandlerResult seat_message_dispatch( DBusMessage *message) { DBusError error; - DBusMessage *reply = NULL; + _cleanup_dbus_message_unref_ DBusMessage *reply = NULL; int r; assert(s); @@ -310,18 +310,13 @@ static DBusHandlerResult seat_message_dispatch( } if (reply) { - if (!dbus_connection_send(connection, reply, NULL)) + if (!bus_maybe_send_reply(connection, message, reply)) goto oom; - - dbus_message_unref(reply); } return DBUS_HANDLER_RESULT_HANDLED; oom: - if (reply) - dbus_message_unref(reply); - dbus_error_free(&error); return DBUS_HANDLER_RESULT_NEED_MEMORY; @@ -376,9 +371,9 @@ char *seat_bus_path(Seat *s) { } int seat_send_signal(Seat *s, bool new_seat) { - DBusMessage *m; + _cleanup_dbus_message_unref_ DBusMessage *m = NULL; int r = -ENOMEM; - char *p = NULL; + _cleanup_free_ char *p = NULL; assert(s); @@ -406,16 +401,13 @@ int seat_send_signal(Seat *s, bool new_seat) { r = 0; finish: - dbus_message_unref(m); - free(p); - return r; } int seat_send_changed(Seat *s, const char *properties) { - DBusMessage *m; + _cleanup_dbus_message_unref_ DBusMessage *m = NULL; int r = -ENOMEM; - char *p = NULL; + _cleanup_free_ char *p = NULL; assert(s); @@ -436,9 +428,5 @@ int seat_send_changed(Seat *s, const char *properties) { r = 0; finish: - if (m) - dbus_message_unref(m); - free(p); - return r; }