[gnome-online-accounts] httpclient: Add a comment



commit b0cfdb9b89f8f4bc3a38376cb5ac82bbee1b8285
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 |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/src/goabackend/goahttpclient.c b/src/goabackend/goahttpclient.c
index c3a9f7c..b7e4d85 100644
--- a/src/goabackend/goahttpclient.c
+++ b/src/goabackend/goahttpclient.c
@@ -182,6 +182,14 @@ 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 [1],
+   * we use an idle handler to break them up.
+   *
+   * [1] https://bugzilla.gnome.org/show_bug.cgi?id=705395
+   */
+
   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]