+Thu Jul 6 15:30:27 2000 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am (EXTRA_DIST): dist fixes.
+
+ * gobject.c: Add a global variable glib_debug_objects
+ (not in header file) to control object tracing.
+
2000-07-01 Tor Lillqvist <tml@iki.fi>
* gobject.def: Update added and renamed entry points.
gobject_h_sources = $(gobject_private_h_sources) $(gobject_public_h_sources) # $(gobject_built_public_sources)
libgobjectinclude_HEADERS = $(gobject_public_h_sources) # $(gobject_built_public_sources)
libgobject_la_SOURCES = $(gobject_c_sources)
-MAINTAINERCLEANFILES += # $(gobject_built_public_sources) $(gobject_built_sources)
+MAINTAINERCLEANFILES +=
+# $(gobject_built_public_sources) $(gobject_built_sources)
EXTRA_HEADERS +=
EXTRA_DIST += $(gobject_private_h_sources)
-EXTRA_DIST += $(gobject_extra_sources) # $(gobject_built_sources) $(gobject_built_public_sources)
+EXTRA_DIST += $(gobject_extra_sources)
+# $(gobject_built_sources) $(gobject_built_public_sources)
#
# programs to compile and install
#
# auxillary files
#
-EXTRA_DIST += \
- TODO \
- makefile.mingw \
- makefile.mingw.in \
- gobject.rc \
+EXTRA_DIST += \
+ makefile.mingw \
+ makefile.mingw.in \
+ gobject.def \
+ gobject.rc \
gobject.rc.in
gobject.rc: $(top_builddir)/config.status $(top_srcdir)/gobject/gobject.rc.in
/* --- functions --- */
#ifdef DEBUG_OBJECTS
+
+/* We need an actual method for handling debug keys in GLib.
+ * For now, we'll simply use, as a method
+ * 'extern gboolean glib_debug_objects'
+ */
+gboolean glib_debug_objects = FALSE;
+
static guint debug_objects_count = 0;
static GHashTable *debug_objects_ht = NULL;
static void
static void
debug_objects_atexit (void)
{
- if (debug_objects_ht)
+ if (glib_debug_objects)
{
- g_message ("stale GObjects: %u", debug_objects_count);
- g_hash_table_foreach (debug_objects_ht, debug_objects_foreach, NULL);
+ if (debug_objects_ht)
+ {
+ g_message ("stale GObjects: %u", debug_objects_count);
+ g_hash_table_foreach (debug_objects_ht, debug_objects_foreach, NULL);
+ }
}
}
#endif DEBUG_OBJECTS
object->qdata = NULL;
#ifdef DEBUG_OBJECTS
- if (!debug_objects_ht)
- debug_objects_ht = g_hash_table_new (g_direct_hash, NULL);
- debug_objects_count++;
- g_hash_table_insert (debug_objects_ht, object, object);
+ if (glib_debug_objects)
+ {
+ if (!debug_objects_ht)
+ debug_objects_ht = g_hash_table_new (g_direct_hash, NULL);
+ debug_objects_count++;
+ g_hash_table_insert (debug_objects_ht, object, object);
+ }
#endif DEBUG_OBJECTS
}
g_datalist_clear (&object->qdata);
#ifdef DEBUG_OBJECTS
- g_assert (g_hash_table_lookup (debug_objects_ht, object) == object);
-
- g_hash_table_remove (debug_objects_ht, object);
- debug_objects_count--;
+ if (glib_debug_objects)
+ {
+ g_assert (g_hash_table_lookup (debug_objects_ht, object) == object);
+
+ g_hash_table_remove (debug_objects_ht, object);
+ debug_objects_count--;
+ }
#endif DEBUG_OBJECTS
g_type_free_instance ((GTypeInstance*) object);