From: Benjamin Otte Date: Sat, 12 Aug 2023 20:14:11 +0000 (+0200) Subject: columnview: Fix refcounting woes X-Git-Tag: archive/raspbian/4.12.3+ds-1+rpi1~1^2^2^2~22^2^2~34 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=db545439c0d4d2ec5d8ce2f81f85f9bf035b902b;p=gtk4.git columnview: Fix refcounting woes The new code did not deal with the GtkScrollInfo properly. Related: #6002 --- diff --git a/gtk/gtkcolumnview.c b/gtk/gtkcolumnview.c index c3db9d0e7f..f95738bfce 100644 --- a/gtk/gtkcolumnview.c +++ b/gtk/gtkcolumnview.c @@ -1798,6 +1798,8 @@ gtk_column_view_scroll_to_column (GtkColumnView *self, gtk_adjustment_get_page_size (self->hadjustment)); gtk_adjustment_set_value (self->hadjustment, new_value); + + g_clear_pointer (&scroll_info, gtk_scroll_info_unref); } void @@ -2214,9 +2216,14 @@ gtk_column_view_scroll_to (GtkColumnView *self, if (column && (flags & GTK_LIST_SCROLL_FOCUS)) gtk_column_view_set_focus_column (self, column, FALSE); - gtk_list_view_scroll_to (self->listview, pos, flags, scroll); + gtk_list_view_scroll_to (self->listview, + pos, + flags, + scroll ? gtk_scroll_info_ref (scroll) : NULL); if (column) gtk_column_view_scroll_to_column (self, column, scroll); + else + g_clear_pointer (&scroll, gtk_scroll_info_unref); }