[gthumb] Fixed possible crash when changing directory during thumbnails creation



commit d434577bc6b84f181fa9a497ece23096c3f78a37
Author: Paolo Bacchilega <paobac src gnome org>
Date:   Tue Mar 22 11:07:42 2022 +0100

    Fixed possible crash when changing directory during thumbnails creation

 gthumb/gth-file-list.c | 8 ++++++++
 1 file changed, 8 insertions(+)
---
diff --git a/gthumb/gth-file-list.c b/gthumb/gth-file-list.c
index 91c681ab..f21cbe2a 100644
--- a/gthumb/gth-file-list.c
+++ b/gthumb/gth-file-list.c
@@ -821,6 +821,7 @@ gfl_clear_list (GthFileList *file_list,
 
        gth_file_selection_unselect_all (GTH_FILE_SELECTION (file_list->priv->view));
 
+       file_list->priv->thumbnailer_state.phase = THUMBNAILER_PHASE_INITIALIZE;
        file_store = gth_file_list_get_model (file_list);
        gth_file_store_clear (file_store);
 
@@ -1533,6 +1534,13 @@ _gth_file_list_thumbnailer_iterate (GthFileList *file_list,
 
        file_store = gth_file_list_get_model (file_list);
 
+       if ((file_list->priv->thumbnailer_state.phase != THUMBNAILER_PHASE_INITIALIZE)
+           && (file_list->priv->thumbnailer_state.phase != THUMBNAILER_PHASE_COMPLETED)
+           && ! gth_file_store_iter_is_valid (file_store, &file_list->priv->thumbnailer_state.current))
+       {
+               file_list->priv->thumbnailer_state.phase = THUMBNAILER_PHASE_INITIALIZE;
+       }
+
        switch (file_list->priv->thumbnailer_state.phase) {
        case THUMBNAILER_PHASE_INITIALIZE:
                file_list->priv->thumbnailer_state.first_visible = gth_file_view_get_first_visible 
(GTH_FILE_VIEW (file_list->priv->view));


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]