[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r1838 - in gnunet-gtk: . src/plugins/fs
From: |
grothoff |
Subject: |
[GNUnet-SVN] r1838 - in gnunet-gtk: . src/plugins/fs |
Date: |
Sun, 21 Aug 2005 20:09:49 -0700 (PDT) |
Author: grothoff
Date: 2005-08-21 20:09:48 -0700 (Sun, 21 Aug 2005)
New Revision: 1838
Modified:
gnunet-gtk/ChangeLog
gnunet-gtk/src/plugins/fs/download.c
Log:
fix
Modified: gnunet-gtk/ChangeLog
===================================================================
--- gnunet-gtk/ChangeLog 2005-08-22 02:50:38 UTC (rev 1837)
+++ gnunet-gtk/ChangeLog 2005-08-22 03:09:48 UTC (rev 1838)
@@ -1,3 +1,6 @@
+Sun Aug 21 19:57:19 PDT 2005
+ Fixed deadlock in download abort code.
+
Sun Aug 21 18:42:14 PDT 2005
Fixed deadlock in gnunet-gtk shutdown.
Modified: gnunet-gtk/src/plugins/fs/download.c
===================================================================
--- gnunet-gtk/src/plugins/fs/download.c 2005-08-22 02:50:38 UTC (rev
1837)
+++ gnunet-gtk/src/plugins/fs/download.c 2005-08-22 03:09:48 UTC (rev
1838)
@@ -413,25 +413,16 @@
NULL);
}
-static void * shutdownCode(void * it) {
- GtkTreeModel * model;
- GtkTreeIter * iter = it;
+struct aDC_closure {
struct ECRS_URI * u;
char * fn;
+};
- model = GTK_TREE_MODEL(summary);
- gtk_tree_model_get(model,
- iter,
- DOWNLOAD_URI, &u,
- DOWNLOAD_FILENAME, &fn,
- -1);
+static void * shutdownCode(void * c) {
+ struct aDC_closure * cls = c;
FSUI_stopDownload(ctx,
- u,
- fn);
- gtk_tree_store_remove(summary,
- iter);
- if (u != NULL)
- ECRS_freeUri(u);
+ cls->u,
+ cls->fn);
return NULL;
}
@@ -439,9 +430,20 @@
GtkTreePath * path,
GtkTreeIter * iter,
GtkTreeStore * tree) {
+ struct aDC_closure cls;
+
GNUNET_ASSERT(model == GTK_TREE_MODEL(summary));
+ gtk_tree_model_get(model,
+ iter,
+ DOWNLOAD_URI, &cls.u,
+ DOWNLOAD_FILENAME, &cls.fn,
+ -1);
+ gtk_tree_store_remove(summary,
+ iter);
run_with_save_calls(&shutdownCode,
- iter);
+ &cls);
+ if (cls.u != NULL)
+ ECRS_freeUri(cls.u);
}
void on_abortDownloadButton_clicked(void * unused,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r1838 - in gnunet-gtk: . src/plugins/fs,
grothoff <=