libgda r3119 - in branches/release-3-0-branch: . providers/postgres



Author: murrayc
Date: Sun Apr  6 15:10:27 2008
New Revision: 3119
URL: http://svn.gnome.org/viewvc/libgda?rev=3119&view=rev

Log:
2008-04-06  Murray Cumming  <murrayc murrayc com>

* providers/postgres/gda-postgres-recordset.c
  (gda_postgres_recordset_get_row,
  gda_postgres_recordset_get_value_at): unref the result of get_row() 
(not the get_row vfunc), because gda_data_model_hash_insert_row() 
holds its own reference. This fixes the leak of each GdaRow.

Modified:
   branches/release-3-0-branch/ChangeLog
   branches/release-3-0-branch/providers/postgres/gda-postgres-recordset.c

Modified: branches/release-3-0-branch/providers/postgres/gda-postgres-recordset.c
==============================================================================
--- branches/release-3-0-branch/providers/postgres/gda-postgres-recordset.c	(original)
+++ branches/release-3-0-branch/providers/postgres/gda-postgres-recordset.c	Sun Apr  6 15:10:27 2008
@@ -205,6 +205,7 @@
 	row_list = get_row (GDA_DATA_MODEL (model), priv_data, row, error);
 	gda_data_model_hash_insert_row (GDA_DATA_MODEL_HASH (model),
 					row, row_list);
+	g_object_unref (row_list); /* gda_data_model_hash_insert_row() holds a reference. */
 
 	return row_list;
 }
@@ -576,6 +577,8 @@
 	row_list = get_row (GDA_DATA_MODEL (model), priv_data, row, NULL);
 	gda_data_model_hash_insert_row (GDA_DATA_MODEL_HASH (model),
 					 row, row_list);
+	g_object_unref (row_list); /* gda_data_model_hash_insert_row() holds a reference. */
+
 	return gda_row_get_value (row_list, col);
 }
 



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