aboutsummaryrefslogtreecommitdiff
path: root/src/fs/gnunet-fs-gtk_download-save-as.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/fs/gnunet-fs-gtk_download-save-as.c')
-rw-r--r--src/fs/gnunet-fs-gtk_download-save-as.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/fs/gnunet-fs-gtk_download-save-as.c b/src/fs/gnunet-fs-gtk_download-save-as.c
index aa0d3604..aeb932a5 100644
--- a/src/fs/gnunet-fs-gtk_download-save-as.c
+++ b/src/fs/gnunet-fs-gtk_download-save-as.c
@@ -94,6 +94,9 @@ clean_up_download_as_context (struct DownloadAsDialogContext *dlc)
94void 94void
95GNUNET_FS_GTK_free_download_entry (struct DownloadEntry *de) 95GNUNET_FS_GTK_free_download_entry (struct DownloadEntry *de)
96{ 96{
97 GtkTreePath *path;
98 GtkTreeIter iter;
99
97 GNUNET_assert (NULL == de->dc); 100 GNUNET_assert (NULL == de->dc);
98 if (NULL != de->sr) 101 if (NULL != de->sr)
99 { 102 {
@@ -103,6 +106,17 @@ GNUNET_FS_GTK_free_download_entry (struct DownloadEntry *de)
103 } 106 }
104 GNUNET_free_non_null (de->filename); 107 GNUNET_free_non_null (de->filename);
105 GNUNET_FS_uri_destroy (de->uri); 108 GNUNET_FS_uri_destroy (de->uri);
109 if (NULL != de->rr)
110 {
111 path = gtk_tree_row_reference_get_path (de->rr);
112 GNUNET_assert (gtk_tree_model_get_iter (GTK_TREE_MODEL (downloads_treestore),
113 &iter, path));
114 gtk_tree_path_free (path);
115 gtk_tree_row_reference_free (de->rr);
116 de->rr = NULL;
117 gtk_tree_store_remove (downloads_treestore,
118 &iter);
119 }
106 GNUNET_free (de); 120 GNUNET_free (de);
107} 121}
108 122
@@ -253,7 +267,7 @@ open_saveas_dialog (struct DownloadEntry *de, int download_directly)
253 } 267 }
254 else 268 else
255 { 269 {
256 dlc->dirname = dirname; 270 dlc->dirname = dirname;
257 } 271 }
258 } 272 }
259 gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dlc->dialog), dirname); 273 gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dlc->dialog), dirname);