[libgda/LIBGDA_4.0] Misc memory usage corrections



commit 57397d57d3ceb7246a3ce7b9055f13177f2ccadb
Author: Vivien Malerba <malerba gnome-db org>
Date:   Thu Oct 1 20:08:36 2009 +0200

    Misc memory usage corrections

 libgda-xslt/sql_backend.c           |    3 +++
 libgda/gda-server-operation.c       |    1 +
 libgda/gda-util.c                   |    2 +-
 libgda/sqlite/gda-sqlite-provider.c |    2 +-
 libgda/sqlite/gen_emb_string.c      |    1 +
 5 files changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/libgda-xslt/sql_backend.c b/libgda-xslt/sql_backend.c
index 3aa7367..41319a2 100644
--- a/libgda-xslt/sql_backend.c
+++ b/libgda-xslt/sql_backend.c
@@ -434,6 +434,7 @@ _utility_data_model_to_nodeset (GdaDataModel * model,
 					for (c = 0; c < rnb_cols; c++)
 						g_free (col_ids[c]);
 					g_free (col_ids);
+					g_free (rcols);
 					return -1;
 				}
 				if (gda_value_is_null ((GValue *) value))
@@ -451,8 +452,10 @@ _utility_data_model_to_nodeset (GdaDataModel * model,
 	for (c = 0; c < rnb_cols; c++)
 		g_free (col_ids[c]);
 	g_free (col_ids);
+	g_free (rcols);
 
 	*nodeset = (xmlXPathObjectPtr) xmlXPathNewNodeSet (mainnode);
+
 	return 0;
 }
 
diff --git a/libgda/gda-server-operation.c b/libgda/gda-server-operation.c
index 6103bc0..a0a9f2f 100644
--- a/libgda/gda-server-operation.c
+++ b/libgda/gda-server-operation.c
@@ -932,6 +932,7 @@ load_xml_spec (GdaServerOperation *op, xmlNodePtr specnode, const gchar *root, G
 		}
 		else {
 			node = node->next;
+			g_free (path_name);
 			continue;
 		}
 		
diff --git a/libgda/gda-util.c b/libgda/gda-util.c
index c776b66..cb79652 100644
--- a/libgda/gda-util.c
+++ b/libgda/gda-util.c
@@ -1493,7 +1493,7 @@ gda_completion_list_get (GdaConnection *cnc, const gchar *sql, gint start, gint
 						
 						g_object_unref (m2);
 					}
-					free (str);
+					g_free (str);
 				}
 			}
 		}
diff --git a/libgda/sqlite/gda-sqlite-provider.c b/libgda/sqlite/gda-sqlite-provider.c
index 62fc831..906fc35 100644
--- a/libgda/sqlite/gda-sqlite-provider.c
+++ b/libgda/sqlite/gda-sqlite-provider.c
@@ -549,7 +549,7 @@ gda_sqlite_provider_open_connection (GdaServerProvider *provider, GdaConnection
 				if (g_str_has_suffix (str, FILE_EXTENSION)) {
 					gchar *ptr;
 					
-					dup = strdup (str);
+					dup = g_strdup (str);
 					dup [len-elen] = 0;
 					for (ptr = dup + (len - elen - 1); (ptr >= dup) && (*ptr != G_DIR_SEPARATOR); ptr--);
 					dbname = ptr;
diff --git a/libgda/sqlite/gen_emb_string.c b/libgda/sqlite/gen_emb_string.c
index f1d839c..b4f26f8 100644
--- a/libgda/sqlite/gen_emb_string.c
+++ b/libgda/sqlite/gen_emb_string.c
@@ -117,6 +117,7 @@ main (int argc,char** argv)
 		for (i = buffer_index; i < buffer_index + n_read + added; i++) {
 			if (buffer_index + n_read + added + 2 >= maxlen) {
 				fprintf (stderr, "Max buffer size reached\nIncrease MAXSIZE constant and re-run\n");
+				fclose (file);
 				return 1;
 			}
 			if (buffer[i] == '"') {



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