From: Marcel Holtmann Date: Mon, 29 Jun 2009 07:42:57 +0000 (+0200) Subject: Fix reseting of timeout identifier X-Git-Tag: 0.20~43 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1c6debfda21afe0eafd4e6e1f7622f922c27dfc3;p=platform%2Fupstream%2Fconnman.git Fix reseting of timeout identifier --- diff --git a/src/service.c b/src/service.c index 2b84823..75a313f 100644 --- a/src/service.c +++ b/src/service.c @@ -579,8 +579,10 @@ static void service_free(gpointer user_data) g_hash_table_remove(service_hash, service->identifier); - if (service->timeout > 0) + if (service->timeout > 0) { g_source_remove(service->timeout); + service->timeout = 0; + } if (service->pending != NULL) { dbus_message_unref(service->pending); @@ -811,8 +813,10 @@ int __connman_service_indicate_state(struct connman_service *service, connman_service_set_favorite(service, TRUE); __connman_storage_save_service(service); - if (service->timeout > 0) + if (service->timeout > 0) { g_source_remove(service->timeout); + service->timeout = 0; + } if (service->pending != NULL) { g_dbus_send_reply(connection, service->pending, @@ -827,8 +831,10 @@ int __connman_service_indicate_state(struct connman_service *service, } if (state == CONNMAN_SERVICE_STATE_FAILURE) { - if (service->timeout > 0) + if (service->timeout > 0) { g_source_remove(service->timeout); + service->timeout = 0; + } if (service->pending != NULL) { DBusMessage *reply;