From: Daniel Wagner Date: Mon, 22 Aug 2011 11:37:08 +0000 (+0200) Subject: session: Don't change ref count if reason code is set. X-Git-Tag: 2.0_alpha~1218 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1d66ff795f047f236b0f31730e4e172cfb62a71a;p=framework%2Fconnectivity%2Fconnman.git session: Don't change ref count if reason code is set. If the reason code has been set the proper action has been executed already. --- diff --git a/src/session.c b/src/session.c index 1baf059..f0b6a20 100644 --- a/src/session.c +++ b/src/session.c @@ -738,6 +738,9 @@ static connman_bool_t explicit_disconnect(struct connman_session *session) session, reason2string(info->entry->reason), info->entry->service, info->entry->state); + if (info->entry->reason == CONNMAN_SESSION_REASON_UNKNOWN) + return FALSE; + if (explicit_connect(info->entry->reason) == FALSE) return FALSE; @@ -873,6 +876,8 @@ static void session_changed(struct connman_session *session, break; case CONNMAN_SESSION_TRIGGER_CONNECT: if (info->online == TRUE) { + if (info->entry->reason == CONNMAN_SESSION_REASON_CONNECT) + break; info->entry->reason = CONNMAN_SESSION_REASON_CONNECT; __connman_service_session_inc(info->entry->service); break;