[telepathy-gabble/telepathy-gabble-0.8] Fix timer problem
Alban Crequy
alban.crequy at collabora.co.uk
Thu Sep 24 10:05:22 PDT 2009
---
src/vcard-manager.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/src/vcard-manager.c b/src/vcard-manager.c
index fc59728..0d85d8c 100644
--- a/src/vcard-manager.c
+++ b/src/vcard-manager.c
@@ -1049,10 +1049,12 @@ suspended_request_timeout_cb (gpointer data)
{
GabbleVCardManagerRequest *request = data;
- /* Send the request again */
g_assert (request->timer_id == 0);
request->timer_id =
g_timeout_add_seconds (request->timeout, timeout_request, request);
+
+ /* Send the request again */
+ request->entry->suspended_timer_id = 0;
cache_entry_ensure_queued (request, request->timeout);
return FALSE;
@@ -1099,6 +1101,8 @@ pipeline_reply_cb (GabbleConnection *conn,
gabble_xmpp_error_from_node (error_node, &error_type) ==
XMPP_ERROR_RESOURCE_CONSTRAINT && error_type == XMPP_ERROR_TYPE_WAIT)
{
+ g_source_remove (request->timer_id);
+ request->timer_id = 0;
entry->suspended_timer_id = g_timeout_add_seconds (
request_wait_delay, suspended_request_timeout_cb, request);
return;
--
1.5.6.5
More information about the telepathy-commits
mailing list