diff options
Diffstat (limited to 'src/glibext/gbufferview.c')
-rw-r--r-- | src/glibext/gbufferview.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/glibext/gbufferview.c b/src/glibext/gbufferview.c index f5adc9d..2239d23 100644 --- a/src/glibext/gbufferview.c +++ b/src/glibext/gbufferview.c @@ -36,7 +36,6 @@ struct _GBufferView GBufferCache *cache; /* Tampon du contenu visualisé */ segcnt_list *highlighted; /* Segments mis en évidence */ - bool external; /* Note l'origine de la liste */ bool unrestricted; /* Validité des informations */ GLineCursor *start; /* Première ligne intégrée */ @@ -189,8 +188,7 @@ static void g_buffer_view_dispose(GBufferView *view) static void g_buffer_view_finalize(GBufferView *view) { - if (!view->external) - exit_segment_content_list(view->highlighted); + unref_segment_content_list(view->highlighted); G_OBJECT_CLASS(g_buffer_view_parent_class)->finalize(G_OBJECT(view)); @@ -223,12 +221,13 @@ GBufferView *g_buffer_view_new(GBufferCache *cache, segcnt_list *highlighted) g_signal_connect(cache, "size-changed", G_CALLBACK(on_buffer_cache_size_changed), result); if (highlighted != NULL) + { + ref_segment_content_list(highlighted); result->highlighted = highlighted; + } else result->highlighted = init_segment_content_list(); - result->external = (highlighted != NULL); - return result; } |