[libgda] Don't use freed memory in GdaMetaStruct!
- From: Vivien Malerba <vivien src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [libgda] Don't use freed memory in GdaMetaStruct!
- Date: Mon, 18 Jan 2010 20:39:09 +0000 (UTC)
commit bf6c9c7f84be2cf671a4632b57c4ad68dfe21f2e
Author: Vivien Malerba <malerba gnome-db org>
Date: Mon Jan 18 21:35:53 2010 +0100
Don't use freed memory in GdaMetaStruct!
libgda/gda-meta-struct.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/libgda/gda-meta-struct.c b/libgda/gda-meta-struct.c
index c2300da..6e8adbd 100644
--- a/libgda/gda-meta-struct.c
+++ b/libgda/gda-meta-struct.c
@@ -312,11 +312,12 @@ compute_view_dependencies (GdaMetaStruct *mstruct, GdaMetaDbObject *view_dbobj,
tmp_obj = gda_meta_struct_complement (m2,
GDA_META_DB_VIEW, NULL, NULL, vname, NULL);
gda_value_free (vname);
- g_object_unref (m2);
- if (!tmp_obj)
+ if (!tmp_obj) {
/* could not find dependency */
+ g_object_unref (m2);
continue;
+ }
/* the dependency exists, and is identified by tmp_obj->obj_catalog, tmp_obj->obj_schema
* and tmp_obj->obj_name */
@@ -337,6 +338,7 @@ compute_view_dependencies (GdaMetaStruct *mstruct, GdaMetaDbObject *view_dbobj,
tmp_obj->obj_schema, tmp_obj->obj_name);
g_hash_table_insert (mstruct->priv->index, str, ref_obj);
}
+ g_object_unref (m2);
g_assert (ref_obj);
gda_value_free (catalog);
gda_value_free (schema);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]