mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-26 07:26:15 +01:00
fetch the nth iface entry of the type node in the nth loop iteration, not
Sat Jun 10 08:38:27 2000 Tim Janik <timj@gtk.org> * gtype.c (type_class_init): fetch the nth iface entry of the type node in the nth loop iteration, not alwys the first. bug discovered by Walt Pohl <cher@suitware.com>. (type_data_finalize_class_ifaces): same here, cut and paste rulez.
This commit is contained in:
parent
ac0c2c1c5a
commit
5ff84de0df
@ -1,3 +1,11 @@
|
|||||||
|
Sat Jun 10 08:38:27 2000 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
|
* gtype.c (type_class_init): fetch the nth iface entry of the
|
||||||
|
type node in the nth loop iteration, not alwys the first.
|
||||||
|
bug discovered by Walt Pohl <cher@suitware.com>.
|
||||||
|
(type_data_finalize_class_ifaces): same here, cut and paste
|
||||||
|
rulez.
|
||||||
|
|
||||||
Wed Jun 7 09:21:05 2000 Owen Taylor <otaylor@redhat.com>
|
Wed Jun 7 09:21:05 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
* Makefile.am (INCLUDES): Add top_builddir so glibconfig.h
|
* Makefile.am (INCLUDES): Add top_builddir so glibconfig.h
|
||||||
|
@ -1014,14 +1014,14 @@ type_class_init (TypeNode *node,
|
|||||||
/* ok, we got the class done, now initialize all interfaces */
|
/* ok, we got the class done, now initialize all interfaces */
|
||||||
for (entry = NULL, i = 0; i < node->n_ifaces; i++)
|
for (entry = NULL, i = 0; i < node->n_ifaces; i++)
|
||||||
if (!node->private.iface_entries[i].vtable)
|
if (!node->private.iface_entries[i].vtable)
|
||||||
entry = node->private.iface_entries;
|
entry = node->private.iface_entries + i;
|
||||||
while (entry)
|
while (entry)
|
||||||
{
|
{
|
||||||
type_iface_vtable_init (LOOKUP_TYPE_NODE (entry->iface_type), node);
|
type_iface_vtable_init (LOOKUP_TYPE_NODE (entry->iface_type), node);
|
||||||
|
|
||||||
for (entry = NULL, i = 0; i < node->n_ifaces; i++)
|
for (entry = NULL, i = 0; i < node->n_ifaces; i++)
|
||||||
if (!node->private.iface_entries[i].vtable)
|
if (!node->private.iface_entries[i].vtable)
|
||||||
entry = node->private.iface_entries;
|
entry = node->private.iface_entries + i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1036,19 +1036,19 @@ type_data_finalize_class_ifaces (TypeNode *node)
|
|||||||
g_message ("finalizing interfaces for %sClass `%s'",
|
g_message ("finalizing interfaces for %sClass `%s'",
|
||||||
type_descriptive_name (G_TYPE_FUNDAMENTAL (NODE_TYPE (node))),
|
type_descriptive_name (G_TYPE_FUNDAMENTAL (NODE_TYPE (node))),
|
||||||
type_descriptive_name (NODE_TYPE (node)));
|
type_descriptive_name (NODE_TYPE (node)));
|
||||||
|
|
||||||
for (entry = NULL, i = 0; i < node->n_ifaces; i++)
|
for (entry = NULL, i = 0; i < node->n_ifaces; i++)
|
||||||
if (node->private.iface_entries[i].vtable &&
|
if (node->private.iface_entries[i].vtable &&
|
||||||
node->private.iface_entries[i].vtable->g_instance_type == NODE_TYPE (node))
|
node->private.iface_entries[i].vtable->g_instance_type == NODE_TYPE (node))
|
||||||
entry = node->private.iface_entries;
|
entry = node->private.iface_entries + i;
|
||||||
while (entry)
|
while (entry)
|
||||||
{
|
{
|
||||||
type_iface_vtable_finalize (LOOKUP_TYPE_NODE (entry->iface_type), node, entry->vtable);
|
type_iface_vtable_finalize (LOOKUP_TYPE_NODE (entry->iface_type), node, entry->vtable);
|
||||||
|
|
||||||
for (entry = NULL, i = 0; i < node->n_ifaces; i++)
|
for (entry = NULL, i = 0; i < node->n_ifaces; i++)
|
||||||
if (node->private.iface_entries[i].vtable &&
|
if (node->private.iface_entries[i].vtable &&
|
||||||
node->private.iface_entries[i].vtable->g_instance_type == NODE_TYPE (node))
|
node->private.iface_entries[i].vtable->g_instance_type == NODE_TYPE (node))
|
||||||
entry = node->private.iface_entries;
|
entry = node->private.iface_entries + i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user