[gobject-introspection] Bug 593322 - Fix unref of GIUnresolvedInfo instances
- From: Colin Walters <walters src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gobject-introspection] Bug 593322 - Fix unref of GIUnresolvedInfo instances
- Date: Fri, 4 Sep 2009 20:56:12 +0000 (UTC)
commit f0edd87e607cccc41946ddbd003593841b028e7c
Author: Colin Walters <walters verbum org>
Date: Fri Sep 4 16:52:35 2009 -0400
Bug 593322 - Fix unref of GIUnresolvedInfo instances
We are treating GIUnresolvedInfo as a GIBaseInfo, but the structures
had drifted out of sync. Add a repository pointer and bring them
back into sync.
Based on a report and patch from Jan Hudec <bulb ucw cz>
girepository/ginfo.c | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/girepository/ginfo.c b/girepository/ginfo.c
index e7b0b8b..19723dd 100644
--- a/girepository/ginfo.c
+++ b/girepository/ginfo.c
@@ -30,21 +30,28 @@
struct _GIBaseInfo
{
+ /* Keep this part in sync with GIUnresolvedInfo below */
gint type;
gint ref_count;
GIRepository *repository;
GIBaseInfo *container;
+ /* Resolved specific */
+
GTypelib *typelib;
guint32 offset;
};
struct _GIUnresolvedInfo
{
+ /* Keep this part in sync with GIBaseInfo above */
gint type;
gint ref_count;
+ GIRepository *repository;
GIBaseInfo *container;
+ /* Unresolved specific */
+
const gchar *name;
const gchar *namespace;
};
@@ -196,6 +203,7 @@ g_info_from_entry (GIRepository *repository,
unresolved->type = GI_INFO_TYPE_UNRESOLVED;
unresolved->ref_count = 1;
+ unresolved->repository = repository;
unresolved->container = NULL;
unresolved->name = name;
unresolved->namespace = namespace;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]