From: Daniel Wagner Date: Wed, 5 Dec 2012 13:57:46 +0000 (+0100) Subject: session: Fix error case handling X-Git-Tag: 1.10~52 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=68851e84a6f2a636bc9f8d0d123e72f59bed8bfe;p=platform%2Fupstream%2Fconnman.git session: Fix error case handling There is no need to unref the pending message, because in all cases we generate a reply message which takes care of unrefing the message. Hence the dbus_message_unref() is not needed. Furthermore, we need to pass the created error message to the bus via g_dbus_send_message() so that the client gets always a response. --- diff --git a/src/session.c b/src/session.c index 3273c67..7ffeedc 100644 --- a/src/session.c +++ b/src/session.c @@ -1689,11 +1689,12 @@ static void session_create_cb(struct connman_session *session, out: if (err < 0) { - __connman_error_failed(user_config->pending, -err); + reply = __connman_error_failed(user_config->pending, -err); + g_dbus_send_message(connection, reply); + free_session(session); } - dbus_message_unref(user_config->pending); g_free(user_config); }