(mdebug__register_object): New function.
authorhanda <handa>
Fri, 4 Jun 2004 11:43:51 +0000 (11:43 +0000)
committerhanda <handa>
Fri, 4 Jun 2004 11:43:51 +0000 (11:43 +0000)
(mdebug__unregister_object): Likewise.

src/m17n-core.c

index 96567c4..cdc63f8 100644 (file)
@@ -408,6 +408,33 @@ mdebug__print_time ()
   } while (0)
 
 
+void
+mdebug__register_object (M17NObjectArray *array, void *object)
+{
+  if (array->used == 0)
+    MLIST_INIT1 (array, objects, 256);
+  array->count++;
+  MLIST_APPEND1 (array, objects, object, MERROR_OBJECT);
+}
+
+void
+mdebug__unregister_object (M17NObjectArray *array, void *object)
+{
+  array->count--;
+  if (array->count >= 0)
+    {
+      int i = 0;
+
+      while (i < array->used && array->objects[i] != object) i++;
+      if (i < array->used)
+       array->objects[i] = NULL;
+      else
+       mdebug_hook ();
+    }
+  else                                                                 \
+    mdebug_hook ();
+}
+
 \f
 /* External API */