[nautilus/wip/corey/fix-sort: 1/7] general: Stop leaking NautilusViewItem




commit c5a86f66c9cbc3839d2fca9d2f6cad90bd3d24f6
Author: Corey Berla <corey berla me>
Date:   Tue Sep 27 08:08:34 2022 -0700

    general: Stop leaking NautilusViewItem

 src/nautilus-grid-cell.c  | 12 +++++++-----
 src/nautilus-label-cell.c |  2 +-
 src/nautilus-list-view.c  |  2 +-
 src/nautilus-name-cell.c  | 12 +++++++-----
 src/nautilus-star-cell.c  |  6 +++---
 5 files changed, 19 insertions(+), 15 deletions(-)
---
diff --git a/src/nautilus-grid-cell.c b/src/nautilus-grid-cell.c
index bf19a36a1..475d84990 100644
--- a/src/nautilus-grid-cell.c
+++ b/src/nautilus-grid-cell.c
@@ -28,7 +28,7 @@ G_DEFINE_TYPE (NautilusGridCell, nautilus_grid_cell, NAUTILUS_TYPE_VIEW_CELL)
 static void
 update_icon (NautilusGridCell *self)
 {
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFileIconFlags flags;
     g_autoptr (GdkPaintable) icon_paintable = NULL;
     GtkStyleContext *style_context;
@@ -66,7 +66,7 @@ update_icon (NautilusGridCell *self)
 static void
 update_captions (NautilusGridCell *self)
 {
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
     GtkWidget * const caption_labels[] =
     {
@@ -98,7 +98,7 @@ update_captions (NautilusGridCell *self)
 static void
 update_emblems (NautilusGridCell *self)
 {
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
     GtkWidget *child;
     g_autolist (GIcon) emblems = NULL;
@@ -125,7 +125,7 @@ update_emblems (NautilusGridCell *self)
 static void
 on_file_changed (NautilusGridCell *self)
 {
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
     g_autofree gchar *name = NULL;
 
@@ -153,8 +153,10 @@ static void
 on_item_is_cut_changed (NautilusGridCell *self)
 {
     gboolean is_cut;
+    g_autoptr (NautilusViewItem) item = NULL;
 
-    g_object_get (nautilus_view_cell_get_item (NAUTILUS_VIEW_CELL (self)),
+    item = nautilus_view_cell_get_item (NAUTILUS_VIEW_CELL (self));
+    g_object_get (item,
                   "is-cut", &is_cut,
                   NULL);
     if (is_cut)
diff --git a/src/nautilus-label-cell.c b/src/nautilus-label-cell.c
index 7d3319dba..e8b62dfb7 100644
--- a/src/nautilus-label-cell.c
+++ b/src/nautilus-label-cell.c
@@ -37,7 +37,7 @@ static GParamSpec *properties[N_PROPS] = { NULL, };
 static void
 on_file_changed (NautilusLabelCell *self)
 {
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
     g_autofree gchar *string = NULL;
 
diff --git a/src/nautilus-list-view.c b/src/nautilus-list-view.c
index 4b7a5f2e1..032e3a9da 100644
--- a/src/nautilus-list-view.c
+++ b/src/nautilus-list-view.c
@@ -880,7 +880,7 @@ on_item_click_released_workaround (GtkGestureClick *gesture,
         modifiers & (GDK_CONTROL_MASK | GDK_SHIFT_MASK))
     {
         NautilusViewModel *model;
-        NautilusViewItem *item;
+        g_autoptr (NautilusViewItem) item = NULL;
         guint i;
 
         model = nautilus_list_base_get_model (NAUTILUS_LIST_BASE (self));
diff --git a/src/nautilus-name-cell.c b/src/nautilus-name-cell.c
index a58415f9e..23e57ed22 100644
--- a/src/nautilus-name-cell.c
+++ b/src/nautilus-name-cell.c
@@ -92,7 +92,7 @@ get_path_text (NautilusFile *file,
 static void
 update_labels (NautilusNameCell *self)
 {
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
     g_autofree gchar *display_name = NULL;
     g_autofree gchar *path_text = NULL;
@@ -125,7 +125,7 @@ update_icon (NautilusNameCell *self)
     NautilusFileIconFlags flags;
     g_autoptr (GdkPaintable) icon_paintable = NULL;
     GtkStyleContext *style_context;
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
     guint icon_size;
     gint scale_factor;
@@ -177,7 +177,7 @@ update_icon (NautilusNameCell *self)
 static void
 update_emblems (NautilusNameCell *self)
 {
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
     GtkWidget *child;
     g_autolist (GIcon) emblems = NULL;
@@ -218,7 +218,7 @@ static void
 on_item_drag_accept_changed (NautilusNameCell *self)
 {
     gboolean drag_accept;
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     GtkWidget *list_row = gtk_widget_get_parent (gtk_widget_get_parent (GTK_WIDGET (self)));
 
     item = nautilus_view_cell_get_item (NAUTILUS_VIEW_CELL (self));
@@ -237,8 +237,10 @@ static void
 on_item_is_cut_changed (NautilusNameCell *self)
 {
     gboolean is_cut;
+    g_autoptr (NautilusViewItem) item = NULL;
 
-    g_object_get (nautilus_view_cell_get_item (NAUTILUS_VIEW_CELL (self)),
+    item = nautilus_view_cell_get_item (NAUTILUS_VIEW_CELL (self));
+    g_object_get (item,
                   "is-cut", &is_cut,
                   NULL);
     if (is_cut)
diff --git a/src/nautilus-star-cell.c b/src/nautilus-star-cell.c
index a47a6b2ff..9f2102808 100644
--- a/src/nautilus-star-cell.c
+++ b/src/nautilus-star-cell.c
@@ -27,7 +27,7 @@ on_star_click_released (GtkGestureClick *gesture,
 {
     NautilusStarCell *self = user_data;
     NautilusTagManager *tag_manager = nautilus_tag_manager_get ();
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
     g_autofree gchar *uri = NULL;
 
@@ -77,7 +77,7 @@ update_star (GtkImage     *star,
 static void
 on_file_changed (NautilusStarCell *self)
 {
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
     g_autofree gchar *string = NULL;
 
@@ -94,7 +94,7 @@ on_starred_changed (NautilusTagManager *tag_manager,
                     gpointer            user_data)
 {
     NautilusStarCell *self = user_data;
-    NautilusViewItem *item;
+    g_autoptr (NautilusViewItem) item = NULL;
     NautilusFile *file;
 
     item = nautilus_view_cell_get_item (NAUTILUS_VIEW_CELL (self));


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