diff options
Diffstat (limited to 'src/fs/gnunet-fs-gtk-main_window_file_publish.c')
-rw-r--r-- | src/fs/gnunet-fs-gtk-main_window_file_publish.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/fs/gnunet-fs-gtk-main_window_file_publish.c b/src/fs/gnunet-fs-gtk-main_window_file_publish.c index ee74ec64..cd18da87 100644 --- a/src/fs/gnunet-fs-gtk-main_window_file_publish.c +++ b/src/fs/gnunet-fs-gtk-main_window_file_publish.c | |||
@@ -944,7 +944,11 @@ add_dir_callback (void *cls, struct GNUNET_DISK_DirectoryIterator * di, | |||
944 | if (dirname == NULL) | 944 | if (dirname == NULL) |
945 | { | 945 | { |
946 | if (di == NULL) | 946 | if (di == NULL) |
947 | { | ||
948 | /* This is the top-level entry, hook the treemodel back */ | ||
949 | gtk_tree_view_set_model (adc->ctx->file_info_treeview, adc->ctx->file_info_treemodel); | ||
947 | return; | 950 | return; |
951 | } | ||
948 | else | 952 | else |
949 | will_continue = GNUNET_DISK_directory_iterator_next (di, GNUNET_NO); | 953 | will_continue = GNUNET_DISK_directory_iterator_next (di, GNUNET_NO); |
950 | } | 954 | } |
@@ -1031,6 +1035,11 @@ add_dir (struct MainPublishingDialogContext *ctx, const char *filename, | |||
1031 | scan_ctx->do_index = do_index; | 1035 | scan_ctx->do_index = do_index; |
1032 | scan_ctx->ctx = ctx; | 1036 | scan_ctx->ctx = ctx; |
1033 | 1037 | ||
1038 | /* Disconnect treestore from the treeview to prevent GTK from trying | ||
1039 | * to update it on the fly. | ||
1040 | */ | ||
1041 | gtk_tree_view_set_model (ctx->file_info_treeview, NULL); | ||
1042 | |||
1034 | /* just make sure that dirname is not NULL, it's not really used */ | 1043 | /* just make sure that dirname is not NULL, it's not really used */ |
1035 | add_dir_callback (scan_ctx, NULL, filename_expanded, filename_expanded); | 1044 | add_dir_callback (scan_ctx, NULL, filename_expanded, filename_expanded); |
1036 | GNUNET_free (filename_expanded); | 1045 | GNUNET_free (filename_expanded); |