[Xfce4-commits] <ristretto:master> Fix crash on thumbnail bar show when there are no images.

Stephan Arts noreply at xfce.org
Mon Feb 20 19:48:03 CET 2012


Updating branch refs/heads/master
         to b6952f26054d7a935c8c340acf82afe0a34d1e5e (commit)
       from e4b30fba14b5e8b04ca301d9f9a39b86352d907a (commit)

commit b6952f26054d7a935c8c340acf82afe0a34d1e5e
Author: David Schneider <dnschneid at gmail.com>
Date:   Thu Feb 16 11:55:49 2012 -0800

    Fix crash on thumbnail bar show when there are no images.

 src/icon_bar.c    |    6 +++++-
 src/main_window.c |    3 ++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/icon_bar.c b/src/icon_bar.c
index 573524d..e53a7f3 100644
--- a/src/icon_bar.c
+++ b/src/icon_bar.c
@@ -824,6 +824,9 @@ rstto_icon_bar_size_allocate (
 
     widget->allocation = *allocation;
 
+    if (!icon_bar->priv->active_item)
+        g_warning ("thumbnail bar shown when no images are available");
+
     if (GTK_WIDGET_REALIZED (widget))
     {
         gdk_window_move_resize (widget->window,
@@ -858,7 +861,8 @@ rstto_icon_bar_size_allocate (
         if (icon_bar->priv->auto_center == TRUE)
         {
             page_size = gtk_adjustment_get_page_size (icon_bar->priv->vadjustment);
-            value = icon_bar->priv->active_item->index * icon_bar->priv->item_height - ((page_size-icon_bar->priv->item_height)/2);
+            if (icon_bar->priv->active_item)
+                value = icon_bar->priv->active_item->index * icon_bar->priv->item_height - ((page_size-icon_bar->priv->item_height)/2);
 
             if (value > (gtk_adjustment_get_upper (icon_bar->priv->vadjustment)-page_size))
                 value = (gtk_adjustment_get_upper (icon_bar->priv->vadjustment)-page_size);
diff --git a/src/main_window.c b/src/main_window.c
index d1b3cf8..ed71513 100644
--- a/src/main_window.c
+++ b/src/main_window.c
@@ -3439,7 +3439,8 @@ cb_rstto_main_window_toggle_show_thumbnailbar (GtkWidget *widget, RsttoMainWindo
 {
     if (gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (widget)))
     {
-        gtk_widget_show (window->priv->t_bar_s_window);
+        if (rstto_image_list_get_n_images (window->priv->image_list) > 0)
+            gtk_widget_show (window->priv->t_bar_s_window);
         rstto_settings_set_boolean_property (RSTTO_SETTINGS (window->priv->settings_manager), "show-thumbnailbar", TRUE);
     }
     else


More information about the Xfce4-commits mailing list