[telepathy-gabble/master] start request timeout when item is sent, not when it is enqueued

Dafydd Harries dafydd.harries at collabora.co.uk
Fri Aug 14 10:34:09 PDT 2009


This prevents vCard requests getting cancelled before they are sent because
items earlier in the queue took too long.
---
 src/request-pipeline.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/request-pipeline.c b/src/request-pipeline.c
index 7359082..3461765 100644
--- a/src/request-pipeline.c
+++ b/src/request-pipeline.c
@@ -345,6 +345,7 @@ send_next_request (GabbleRequestPipeline *pipeline)
     {
       priv->items_in_flight = g_slist_prepend (priv->items_in_flight, item);
       item->in_flight = TRUE;
+      item->timer_id = g_timeout_add (item->timeout, timeout_cb, item);
     }
 }
 
@@ -390,7 +391,6 @@ gabble_request_pipeline_enqueue (GabbleRequestPipeline *pipeline,
   item->message = msg;
   if (timeout == 0)
       timeout = DEFAULT_REQUEST_TIMEOUT;
-  item->timer_id = g_timeout_add (timeout, timeout_cb, item);
   item->timeout = timeout;
   item->in_flight = FALSE;
   item->callback = callback;
-- 
1.5.6.5




More information about the telepathy-commits mailing list