diff options
author | Alan Fitton <ajf@eth0.org.uk> | 2011-02-20 22:08:15 +0000 |
---|---|---|
committer | Alan Fitton <ajf@eth0.org.uk> | 2011-02-20 22:08:15 +0000 |
commit | 740df25896ef41a079160c0cdec5007f0f51a2e6 (patch) | |
tree | e252f568e5782164b1b45112b69677c667ae17e7 /src | |
parent | dcca1f0b20e2c154dfb3e5b51918bf7e7c96ed73 (diff) |
ugh, forgot to lock the GDK thread in the new update-blocklist/port-test callbacks.
Diffstat (limited to 'src')
-rw-r--r-- | src/trg-remote-prefs-dialog.c | 11 | ||||
-rw-r--r-- | src/trg-stats-dialog.c | 4 |
2 files changed, 13 insertions, 2 deletions
diff --git a/src/trg-remote-prefs-dialog.c b/src/trg-remote-prefs-dialog.c index fba2f5f..764c4a5 100644 --- a/src/trg-remote-prefs-dialog.c +++ b/src/trg-remote-prefs-dialog.c @@ -295,6 +295,8 @@ static GtkWidget *trg_rprefs_limitsPage(TrgRemotePrefsDialog * win, static void on_port_tested(JsonObject * response, int status, gpointer data) { + gdk_threads_enter(); + if (TRG_IS_REMOTE_PREFS_DIALOG(data)) { TrgRemotePrefsDialogPrivate *priv = TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(data); @@ -311,9 +313,10 @@ static void on_port_tested(JsonObject * response, int status, } else { trg_error_dialog(GTK_WINDOW(data), status, response); } - } + } - response_unref(response); + gdk_threads_leave(); + response_unref(response); } static void port_test_cb(GtkButton *b, gpointer data) @@ -331,6 +334,8 @@ static void port_test_cb(GtkButton *b, gpointer data) static void on_blocklist_updated(JsonObject * response, int status, gpointer data) { + gdk_threads_enter(); + if (TRG_IS_REMOTE_PREFS_DIALOG(data)) { TrgRemotePrefsDialogPrivate *priv = TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(data); @@ -347,6 +352,8 @@ static void on_blocklist_updated(JsonObject * response, int status, } } + gdk_threads_leave(); + response_unref(response); } diff --git a/src/trg-stats-dialog.c b/src/trg-stats-dialog.c index 9edb79c..315d3e2 100644 --- a/src/trg-stats-dialog.c +++ b/src/trg-stats-dialog.c @@ -202,6 +202,8 @@ static void on_stats_reply(JsonObject * response, int status, TrgStatsDialogPrivate *priv; JsonObject *args; + gdk_threads_enter(); + if (!TRG_IS_STATS_DIALOG(data)) { response_unref(response); return; @@ -224,6 +226,8 @@ static void on_stats_reply(JsonObject * response, int status, trg_error_dialog(GTK_WINDOW(data), status, response); } + gdk_threads_leave(); + response_unref(response); } |