X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fdbus-manager.c;h=2f755bcc64dff28889710d26376af37c79a4f499;hb=ffd73e3599ea2a97c03c1765cd4bc94ebc152f89;hp=92a602219be536b86d8d15454dbba854599a9168;hpb=871c44a747a8bf4465cbfda445216e9ac66d4a40;p=elogind.git diff --git a/src/dbus-manager.c b/src/dbus-manager.c index 92a602219..2f755bcc6 100644 --- a/src/dbus-manager.c +++ b/src/dbus-manager.c @@ -1020,8 +1020,10 @@ static DBusHandlerResult bus_manager_message_handler(DBusConnection *connection, if (!e) goto oom; - if (!(reply = dbus_message_new_method_return(message))) + if (!(reply = dbus_message_new_method_return(message))) { + strv_free(e); goto oom; + } strv_free(m->environment); m->environment = e; @@ -1108,8 +1110,6 @@ static DBusHandlerResult bus_manager_message_handler(DBusConnection *connection, goto oom; } - free(path); - if (reply) { if (!dbus_connection_send(connection, reply, NULL)) goto oom; @@ -1117,6 +1117,8 @@ static DBusHandlerResult bus_manager_message_handler(DBusConnection *connection, dbus_message_unref(reply); } + free(path); + return DBUS_HANDLER_RESULT_HANDLED; oom: