From ae134752773917f225d88188f6dfba858e1dceee Mon Sep 17 00:00:00 2001 From: Owen Taylor Date: Thu, 6 Jul 2000 20:18:12 +0000 Subject: [PATCH] dist fixes. Thu Jul 6 15:30:27 2000 Owen Taylor * Makefile.am (EXTRA_DIST): dist fixes. * gobject.c: Add a global variable glib_debug_objects (not in header file) to control object tracing. --- gobject/ChangeLog | 7 +++++++ gobject/Makefile.am | 16 +++++++++------- gobject/gobject.c | 38 +++++++++++++++++++++++++++----------- 3 files changed, 43 insertions(+), 18 deletions(-) diff --git a/gobject/ChangeLog b/gobject/ChangeLog index 69609034e..edda85979 100644 --- a/gobject/ChangeLog +++ b/gobject/ChangeLog @@ -1,3 +1,10 @@ +Thu Jul 6 15:30:27 2000 Owen Taylor + + * 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 * gobject.def: Update added and renamed entry points. diff --git a/gobject/Makefile.am b/gobject/Makefile.am index dac3c430e..9c7ce7fcd 100644 --- a/gobject/Makefile.am +++ b/gobject/Makefile.am @@ -63,10 +63,12 @@ gobject_extra_sources = @STRIP_BEGIN@ \ 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 @@ -81,11 +83,11 @@ gobject_query_LDADD = $(progs_LDADD) # # 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 diff --git a/gobject/gobject.c b/gobject/gobject.c index 62016cd5f..9dc289f3f 100644 --- a/gobject/gobject.c +++ b/gobject/gobject.c @@ -64,6 +64,13 @@ static GHashTable *param_spec_hash_table = NULL; /* --- 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 @@ -81,10 +88,13 @@ debug_objects_foreach (gpointer key, 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 @@ -239,10 +249,13 @@ g_object_do_init (GObject *object) 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 } @@ -275,10 +288,13 @@ g_object_do_finalize (GObject *object) 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);