[gimp/soc-2010-cage] app: don't call gimp_cell_renderer_viewable_pre_clicked() on a NULL cell



commit 25cf3405fe050b3816bd39a12da403bad61dbaa8
Author: Michael Natterer <mitch gimp org>
Date:   Mon Jun 28 00:13:19 2010 +0200

    app: don't call gimp_cell_renderer_viewable_pre_clicked() on a NULL cell

 app/widgets/gimpcontainertreeview.c |   30 ++++++++++++++++++------------
 1 files changed, 18 insertions(+), 12 deletions(-)
---
diff --git a/app/widgets/gimpcontainertreeview.c b/app/widgets/gimpcontainertreeview.c
index 1920b11..51d75fe 100644
--- a/app/widgets/gimpcontainertreeview.c
+++ b/app/widgets/gimpcontainertreeview.c
@@ -952,20 +952,26 @@ gimp_container_tree_view_button_press (GtkWidget             *widget,
                 {
                   gchar *path_str = gtk_tree_path_to_string (path);
 
-                  handled =
-                    gimp_cell_renderer_viewable_pre_clicked (clicked_cell,
-                                                             path_str,
-                                                             bevent->state);
+                  handled = FALSE;
 
-                  if (! handled && multisel_mode)
-                    {
-                      /* let parent do the work */
-                      handled = FALSE;
-                    }
-                  else if (! handled)
+                  if (clicked_cell)
+                    handled =
+                      gimp_cell_renderer_viewable_pre_clicked (clicked_cell,
+                                                               path_str,
+                                                               bevent->state);
+
+                  if (! handled)
                     {
-                      handled = gimp_container_view_item_selected (container_view,
-                                                                   renderer->viewable);
+                      if (multisel_mode)
+                        {
+                          /* let parent do the work */
+                        }
+                      else
+                        {
+                          handled =
+                            gimp_container_view_item_selected (container_view,
+                                                               renderer->viewable);
+                        }
                     }
 
                   g_free (path_str);



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