diff options
Diffstat (limited to 'src/gui')
| -rw-r--r-- | src/gui/core/items.c | 6 | ||||
| -rw-r--r-- | src/gui/menus/view.c | 3 | 
2 files changed, 9 insertions, 0 deletions
| diff --git a/src/gui/core/items.c b/src/gui/core/items.c index 68d2556..dff177d 100644 --- a/src/gui/core/items.c +++ b/src/gui/core/items.c @@ -88,6 +88,9 @@ void change_editor_items_current_content(GLoadedContent *content)      {          _first_content_change = false; +        if (content != NULL) +            g_object_ref(G_OBJECT(content)); +          set_current_content(content);          editem_list_for_each(iter, _editem_list) @@ -196,6 +199,9 @@ void change_editor_items_current_view(GLoadedPanel *panel)      {          _first_panel_change = false; +        if (panel != NULL) +            g_object_ref(G_OBJECT(panel)); +          set_current_view(panel);          editem_list_for_each(iter, _editem_list) diff --git a/src/gui/menus/view.c b/src/gui/menus/view.c index 0abdf2a..6f113e2 100644 --- a/src/gui/menus/view.c +++ b/src/gui/menus/view.c @@ -755,6 +755,7 @@ static void change_current_view_support(unsigned int wanted)      GLoadedPanel *new;                      /* Panneau encapsulé           */      panel = get_current_view(); +      station = get_dock_station_for_view_panel(GTK_WIDGET(panel));      content = g_loaded_panel_get_content(panel); @@ -773,6 +774,8 @@ static void change_current_view_support(unsigned int wanted)      change_editor_items_current_view(new); +    g_object_unref(G_OBJECT(new)); +      g_object_unref(G_OBJECT(cursor));      g_object_unref(G_OBJECT(panel)); | 
