[bijiben] mainView: Fix crashers on exit



commit 8099085b172d68fa7ec32946d10ef68d255622c0
Author: Pierre-Yves Luyten <py luyten fr>
Date:   Sat Mar 16 21:36:24 2013 +0100

    mainView: Fix crashers on exit
    
    Since dropping GtkClutter on main view, obj are now GtkWidgets
    Thus its already freed while parent destroyed,
    no need to free it.

 src/bjb-main-view.c   |    8 --------
 src/bjb-note-view.c   |    1 -
 src/bjb-window-base.c |    3 ++-
 3 files changed, 2 insertions(+), 10 deletions(-)
---
diff --git a/src/bjb-main-view.c b/src/bjb-main-view.c
index 4b23125..f3bda4f 100644
--- a/src/bjb-main-view.c
+++ b/src/bjb-main-view.c
@@ -84,14 +84,6 @@ bjb_main_view_init (BjbMainView *object)
 static void
 bjb_main_view_finalize (GObject *object)
 {
-  BjbMainView     *self = BJB_MAIN_VIEW(object) ;
-  BjbMainViewPriv *priv = self->priv;
-
-  /* Widgets, actors */
-  g_clear_object (&priv->main_toolbar);
-  g_clear_object (&priv->select_bar);
-  g_clear_object (&priv->search_bar);
-
   G_OBJECT_CLASS (bjb_main_view_parent_class)->finalize (object);
 }
 
diff --git a/src/bjb-note-view.c b/src/bjb-note-view.c
index 1f73916..d66f6f8 100644
--- a/src/bjb-note-view.c
+++ b/src/bjb-note-view.c
@@ -107,7 +107,6 @@ bjb_note_view_finalize(GObject *object)
   g_clear_object (&priv->accel);
   g_clear_object (&priv->edit_bar);
   clutter_color_free (priv->last_date_bckgrd_clr);
-  clutter_actor_destroy (priv->edit_bar_actor);
 
   G_OBJECT_CLASS (bjb_note_view_parent_class)->finalize (object);
 }
diff --git a/src/bjb-window-base.c b/src/bjb-window-base.c
index f566142..c3c4327 100644
--- a/src/bjb-window-base.c
+++ b/src/bjb-window-base.c
@@ -64,7 +64,6 @@ bjb_window_base_finalize (GObject *object)
   BjbWindowBase *self = BJB_WINDOW_BASE (object);
   BjbWindowBasePriv *priv = self->priv;
 
-  g_clear_object (&priv->view);
   g_clear_object (&priv->controller);
 
   G_OBJECT_CLASS (bjb_window_base_parent_class)->finalize (object);
@@ -256,6 +255,8 @@ bjb_window_base_switch_to_note (BjbWindowBase *bwb, BijiNoteObj *note)
   priv->note_overlay = gtk_overlay_new ();
   gd_stack_add_named (priv->stack, priv->note_overlay, "note-view");
   priv->note_view = bjb_note_view_new (w, priv->note_overlay, note);
+  g_object_add_weak_pointer (G_OBJECT (priv->note_view),
+                             (gpointer *) &priv->note_view);
 
   bjb_window_base_set_note (bwb, priv->note);
   bjb_window_base_switch_to (bwb, BJB_NOTE_VIEW);


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