From: Arron Wang Date: Mon, 15 Oct 2012 02:56:00 +0000 (+0800) Subject: Tizen: Fix reply pending bug X-Git-Tag: accepted/tizen/20130710.213944~6^2~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9dabc5af5a19a7da74357afcf9f3301ada173e8e;p=platform%2Fupstream%2Fconnman.git Tizen: Fix reply pending bug --- diff --git a/src/service.c b/src/service.c index 24e9562..893b4fc 100644 --- a/src/service.c +++ b/src/service.c @@ -5186,7 +5186,16 @@ static int service_indicate_state(struct connman_service *service) if (new_state == CONNMAN_SERVICE_STATE_IDLE && old_state != CONNMAN_SERVICE_STATE_DISCONNECT) { +#if !defined TIZEN_EXT + /* + * Description: 'service->pending' should be cleared whenever + * connection is finished regardless success or failure. + * If the service is disconnected in configuration state by + * dhcp failure or by the other part of connman, new state is + * 'idle' but old state is 'disconnect'. So it's not cleared. + */ reply_pending(service, ECONNABORTED); +#endif __connman_service_disconnect(service); } @@ -5208,6 +5217,9 @@ static int service_indicate_state(struct connman_service *service) if (new_state == CONNMAN_SERVICE_STATE_IDLE) { connman_bool_t reconnect; +#if defined TIZEN_EXT + reply_pending(service, ECONNABORTED); +#endif reconnect = get_reconnect_state(service); if (reconnect == TRUE) __connman_service_auto_connect();