diff options
Diffstat (limited to 'gtk')
-rw-r--r-- | gtk/gtkcolumnview.c | 4 | ||||
-rw-r--r-- | gtk/gtkprintunixdialog.c | 2 | ||||
-rw-r--r-- | gtk/gtksortlistmodel.c | 8 | ||||
-rw-r--r-- | gtk/inspector/actions.c | 12 | ||||
-rw-r--r-- | gtk/inspector/controllers.c | 2 | ||||
-rw-r--r-- | gtk/inspector/prop-list.c | 1 | ||||
-rw-r--r-- | gtk/inspector/resource-list.c | 3 |
7 files changed, 15 insertions, 17 deletions
diff --git a/gtk/gtkcolumnview.c b/gtk/gtkcolumnview.c index 6ad2580c25..691c18e6ed 100644 --- a/gtk/gtkcolumnview.c +++ b/gtk/gtkcolumnview.c @@ -1500,8 +1500,8 @@ gtk_column_view_get_list_view (GtkColumnView *self) * |[ * gtk_column_view_column_set_sorter (column, sorter); * gtk_column_view_append_column (view, column); - * model = gtk_sort_list_model_new (store, - * gtk_column_view_get_sorter (view)); + * sorter = g_object_ref (gtk_column_view_get_sorter (view))); + * model = gtk_sort_list_model_new (store, sorter); * selection = gtk_no_selection_new (model); * gtk_column_view_set_model (view, selection); * ]| diff --git a/gtk/gtkprintunixdialog.c b/gtk/gtkprintunixdialog.c index 09e7c1ea8b..2305d3d4ed 100644 --- a/gtk/gtkprintunixdialog.c +++ b/gtk/gtkprintunixdialog.c @@ -813,7 +813,6 @@ gtk_print_unix_dialog_init (GtkPrintUnixDialog *dialog) model = load_print_backends (dialog); sorter = gtk_custom_sorter_new (default_printer_list_sort_func, NULL, NULL); sorted = G_LIST_MODEL (gtk_sort_list_model_new (model, sorter)); - g_object_unref (sorter); filter = gtk_every_filter_new (); @@ -839,7 +838,6 @@ gtk_print_unix_dialog_init (GtkPrintUnixDialog *dialog) g_signal_connect_swapped (selection, "notify::selected", G_CALLBACK (selected_printer_changed), dialog); g_object_unref (selection); g_object_unref (filtered); - g_object_unref (model); gtk_print_load_custom_papers (dialog->custom_paper_list); diff --git a/gtk/gtksortlistmodel.c b/gtk/gtksortlistmodel.c index 64bd038bcc..24c2b5271d 100644 --- a/gtk/gtksortlistmodel.c +++ b/gtk/gtksortlistmodel.c @@ -828,8 +828,8 @@ gtk_sort_list_model_init (GtkSortListModel *self) /** * gtk_sort_list_model_new: - * @model: (allow-none): the model to sort - * @sorter: (allow-none): the #GtkSorter to sort @model with + * @model: (allow-none) (transfer full): the model to sort, or %NULL + * @sorter: (allow-none) (transfer full): the #GtkSorter to sort @model with, or %NULL * * Creates a new sort list model that uses the @sorter to sort @model. * @@ -849,6 +849,10 @@ gtk_sort_list_model_new (GListModel *model, "sorter", sorter, NULL); + /* consume the references */ + g_clear_object (&model); + g_clear_object (&sorter); + return result; } diff --git a/gtk/inspector/actions.c b/gtk/inspector/actions.c index 4965bb6349..9f68ded33e 100644 --- a/gtk/inspector/actions.c +++ b/gtk/inspector/actions.c @@ -46,7 +46,7 @@ struct _GtkInspectorActions GObject *object; - GListModel *actions; + GListStore *actions; GtkColumnViewColumn *name; }; @@ -79,7 +79,7 @@ action_added (GObject *owner, GtkInspectorActions *sl) { ActionHolder *holder = action_holder_new (owner, action_name); - g_list_store_append (G_LIST_STORE (sl->actions), holder); + g_list_store_append (sl->actions, holder); g_object_unref (holder); } @@ -283,7 +283,7 @@ add_muxer (GtkInspectorActions *sl, static gboolean reload (GtkInspectorActions *sl) { - g_list_store_remove_all (G_LIST_STORE (sl->actions)); + g_list_store_remove_all (sl->actions); if (GTK_IS_APPLICATION (sl->object)) { @@ -395,9 +395,9 @@ constructed (GObject *object) gtk_column_view_column_set_sorter (sl->name, sorter); g_object_unref (sorter); - sl->actions = G_LIST_MODEL (g_list_store_new (ACTION_TYPE_HOLDER)); - sorted = G_LIST_MODEL (gtk_sort_list_model_new (sl->actions, - gtk_column_view_get_sorter (GTK_COLUMN_VIEW (sl->list)))); + sl->actions = g_list_store_new (ACTION_TYPE_HOLDER); + sorted = G_LIST_MODEL (gtk_sort_list_model_new (g_object_ref (G_LIST_MODEL (sl->actions)), + g_object_ref (gtk_column_view_get_sorter (GTK_COLUMN_VIEW (sl->list))))); model = G_LIST_MODEL (gtk_no_selection_new (sorted)); gtk_column_view_set_model (GTK_COLUMN_VIEW (sl->list), model); g_object_unref (sorted); diff --git a/gtk/inspector/controllers.c b/gtk/inspector/controllers.c index 9d1ef7ffaf..bb658a2c74 100644 --- a/gtk/inspector/controllers.c +++ b/gtk/inspector/controllers.c @@ -249,7 +249,6 @@ gtk_inspector_controllers_set_object (GtkInspectorControllers *self, sorter = gtk_custom_sorter_new (compare_controllers, NULL, NULL); sort_model = gtk_sort_list_model_new (G_LIST_MODEL (flatten_model), sorter); - g_object_unref (sorter); gtk_list_box_bind_model (GTK_LIST_BOX (self->listbox), G_LIST_MODEL (sort_model), @@ -258,7 +257,6 @@ gtk_inspector_controllers_set_object (GtkInspectorControllers *self, NULL); g_object_unref (sort_model); - g_object_unref (flatten_model); } static void diff --git a/gtk/inspector/prop-list.c b/gtk/inspector/prop-list.c index a5b12d9a52..e7d2aeb21b 100644 --- a/gtk/inspector/prop-list.c +++ b/gtk/inspector/prop-list.c @@ -634,7 +634,6 @@ gtk_inspector_prop_list_set_object (GtkInspectorPropList *pl, g_object_unref (list); g_object_unref (sorted); - g_object_unref (filtered); return TRUE; } diff --git a/gtk/inspector/resource-list.c b/gtk/inspector/resource-list.c index 57be9a049f..1cb3770bd4 100644 --- a/gtk/inspector/resource-list.c +++ b/gtk/inspector/resource-list.c @@ -712,11 +712,10 @@ constructed (GObject *object) column_sorter = gtk_column_view_get_sorter (GTK_COLUMN_VIEW (rl->list)); sorter = gtk_tree_list_row_sorter_new (g_object_ref (column_sorter)); - sort_model = G_LIST_MODEL (gtk_sort_list_model_new (G_LIST_MODEL (rl->tree_model), sorter)); + sort_model = G_LIST_MODEL (gtk_sort_list_model_new (g_object_ref (G_LIST_MODEL (rl->tree_model)), sorter)); rl->selection = gtk_single_selection_new (sort_model); g_object_unref (root_model); g_object_unref (sort_model); - g_object_unref (sorter); gtk_column_view_set_model (GTK_COLUMN_VIEW (rl->list), G_LIST_MODEL (rl->selection)); |