[gnome-online-accounts/wip/rishi/gtask2: 10/13] httpclient: Add a comment



commit d0336a054c742a6b45848e0f8e775490f56e0433
Author: Debarshi Ray <debarshir gnome org>
Date:   Mon Jan 9 18:18:23 2017 +0100

    httpclient: Add a comment
    
    https://bugzilla.gnome.org/show_bug.cgi?id=764157

 src/goabackend/goahttpclient.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)
---
diff --git a/src/goabackend/goahttpclient.c b/src/goabackend/goahttpclient.c
index 32eb1c0..d6a1611 100644
--- a/src/goabackend/goahttpclient.c
+++ b/src/goabackend/goahttpclient.c
@@ -206,6 +206,12 @@ http_client_check_response_cb (SoupSession *session, SoupMessage *msg, gpointer
   if (error != NULL)
     g_simple_async_result_take_error (data->res, error);
 
+  /* We might be invoked from a GCancellable::cancelled
+   * handler, and freeing CheckData will disconnect the handler. Since
+   * disconnecting from inside the handler will cause a deadlock, we
+   * use an idle handler to break them up.
+   */
+
   source = g_idle_source_new ();
   g_source_set_priority (source, G_PRIORITY_DEFAULT_IDLE);
   g_source_set_callback (source, http_client_check_complete_and_free_in_idle, data, NULL);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]