[evolution-patches] e-table reference leaks



This patch cleans up a couple of leaked references in the e-table code. 
I'm not 100% sure the add_column patch shouldn't just remove the
g_object_ref instead of unreffing after the call, but I'll let Mike
decide.

--Larry
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/gal/gal/e-table/ChangeLog,v
retrieving revision 1.904
diff -u -p -r1.904 ChangeLog
--- ChangeLog	13 Jun 2003 22:27:02 -0000	1.904
+++ ChangeLog	19 Jun 2003 15:06:51 -0000
@@ -1,3 +1,14 @@
+2003-06-19  Larry Ewing  <lewing ximian com>
+
+	* e-table-specification.c (e_table_specification_load_from_node):
+	remove extra ref, the count starts at one.
+
+	* e-table-utils.c (e_table_spec_to_full_header): add_column adds a
+	reference, so drop the intial reference.
+
+	* e-table.c (et_real_construct):remove extra ref, count starts at
+	one.
+
 2003-06-13  Mike Kestner  <mkestner ximian com>
 
 	* e-tree.c (et_search_search): don't do the CURSOR_FIRST
Index: e-table-specification.c
===================================================================
RCS file: /cvs/gnome/gal/gal/e-table/e-table-specification.c,v
retrieving revision 1.27
diff -u -p -r1.27 e-table-specification.c
--- e-table-specification.c	15 Jan 2003 19:42:14 -0000	1.27
+++ e-table-specification.c	19 Jun 2003 15:06:51 -0000
@@ -248,7 +248,6 @@ e_table_specification_load_from_node (ET
 		if (!strcmp (children->name, "ETableColumn")) {
 			ETableColumnSpecification *col_spec = e_table_column_specification_new ();
 
-			g_object_ref (col_spec);
 			e_table_column_specification_load_from_node (col_spec, children);
 			list = g_list_append (list, col_spec);
 		} else if (specification->state == NULL && !strcmp (children->name, "ETableState")) {
Index: e-table-utils.c
===================================================================
RCS file: /cvs/gnome/gal/gal/e-table/e-table-utils.c,v
retrieving revision 1.15
diff -u -p -r1.15 e-table-utils.c
--- e-table-utils.c	4 Mar 2003 22:09:43 -0000	1.15
+++ e-table-utils.c	19 Jun 2003 15:06:51 -0000
@@ -136,8 +136,10 @@ e_table_spec_to_full_header (ETableSpeci
 		ETableCol *col = et_col_spec_to_col (
 			spec->columns[column], ete, spec->domain);
 
-		if (col)
+		if (col) {
 			e_table_header_add_column (nh, col, -1);
+			g_object_unref (col);
+		}
 	}
 
 	return nh;
Index: e-table.c
===================================================================
RCS file: /cvs/gnome/gal/gal/e-table/e-table.c,v
retrieving revision 1.223
diff -u -p -r1.223 e-table.c
--- e-table.c	1 May 2003 18:02:17 -0000	1.223
+++ e-table.c	19 Jun 2003 15:06:53 -0000
@@ -1439,7 +1439,6 @@ et_real_construct (ETable *e_table, ETab
 		g_object_ref(ete);
 	else {
 		ete = e_table_extras_new();
-		g_object_ref(ete);
 	}
 
 	e_table->domain = g_strdup (specification->domain);


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