summaryrefslogtreecommitdiff
path: root/girepository
diff options
context:
space:
mode:
authorSteve Frécinaux <code@istique.net>2010-08-03 23:39:58 +0200
committerSteve Frécinaux <code@istique.net>2010-08-03 23:42:08 +0200
commit3f4a60575c69d5970ea3185b768f083bfd168518 (patch)
tree0a27bea18ec046effbe71550628ff73192016711 /girepository
parente59232e64fdbcd4e0e2633efdb5d40c7b11464c1 (diff)
Do not leak typelibs with wrong header info.probably-0.9.3GOBJECT_INTROSPECTION_0_9_3
Previously the typelibs that were loaded but whose header information weren't right were just leaked. https://bugzilla.gnome.org/show_bug.cgi?id=625672
Diffstat (limited to 'girepository')
-rw-r--r--girepository/girepository.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/girepository/girepository.c b/girepository/girepository.c
index 7c2e2b5..50bcfbd 100644
--- a/girepository/girepository.c
+++ b/girepository/girepository.c
@@ -1280,6 +1280,7 @@ require_internal (GIRepository *repository,
"Typelib file %s for namespace '%s' contains "
"namespace '%s' which doesn't match the file name",
path, namespace, typelib_namespace);
+ g_typelib_free (typelib);
goto out;
}
if (version != NULL && strcmp (typelib_version, version) != 0)
@@ -1289,6 +1290,7 @@ require_internal (GIRepository *repository,
"Typelib file %s for namespace '%s' contains "
"version '%s' which doesn't match the expected version '%s'",
path, namespace, typelib_version, version);
+ g_typelib_free (typelib);
goto out;
}