Changed include/yaz/diagbib1.h and added include/yaz/diagsrw.h with
[yaz-moved-to-github.git] / src / nmem.c
index 1f8824f..4f2504e 100644 (file)
@@ -1,8 +1,8 @@
 /*
- * Copyright (c) 1995-2005, Index Data.
+ * Copyright (C) 1995-2005, Index Data ApS
  * See the file LICENSE for details.
  *
- * $Id: nmem.c,v 1.11 2005-01-05 10:23:42 adam Exp $
+ * $Id: nmem.c,v 1.14 2005-01-21 09:23:27 adam Exp $
  */
 
 /**
@@ -20,6 +20,7 @@
 #endif
 
 #include <assert.h>
+#include <stdlib.h>
 #include <string.h>
 #include <errno.h>
 #include <stddef.h>
@@ -59,8 +60,8 @@ struct align {
 
 #define NMEM_ALIGN (offsetof(struct align, u))
 
-static int log_level=0;
-static int log_level_initialized=0;
+static int log_level = 0;
+static int log_level_initialized = 0;
 
 #ifdef WIN32
 static CRITICAL_SECTION critical_section;
@@ -95,11 +96,10 @@ YAZ_EXPORT void nmem_mutex_create(NMEM_MUTEX *p)
 {
     if (!log_level_initialized)
     {
-        log_level=yaz_log_module_level("nmem");
-        log_level_initialized=1;
+        log_level = yaz_log_module_level("nmem");
+        log_level_initialized = 1;
     }
 
-    NMEM_ENTER;
     if (!*p)
     {
        *p = (NMEM_MUTEX) malloc (sizeof(**p));
@@ -111,7 +111,6 @@ YAZ_EXPORT void nmem_mutex_create(NMEM_MUTEX *p)
         pth_mutex_init (&(*p)->m_handle);
 #endif
     }
-    NMEM_LEAVE;
 }
 
 YAZ_EXPORT void nmem_mutex_enter(NMEM_MUTEX p)
@@ -140,7 +139,6 @@ YAZ_EXPORT void nmem_mutex_leave(NMEM_MUTEX p)
 
 YAZ_EXPORT void nmem_mutex_destroy(NMEM_MUTEX *p)
 {
-    NMEM_ENTER;
     if (*p)
     {
 #ifdef WIN32
@@ -149,7 +147,6 @@ YAZ_EXPORT void nmem_mutex_destroy(NMEM_MUTEX *p)
        free (*p);
        *p = 0;
     }
-    NMEM_LEAVE;
 }
 
 static nmem_block *freelist = NULL;        /* "global" freelists */
@@ -307,8 +304,8 @@ NMEM nmem_create(void)
 #endif
     if (!log_level_initialized)
     {
-        log_level=yaz_log_module_level("nmem");
-        log_level_initialized=1;
+        log_level = yaz_log_module_level("nmem");
+        log_level_initialized = 1;
     }
     
     NMEM_ENTER;
@@ -416,24 +413,23 @@ void nmem_critical_leave (void)
 
 void nmem_init (void)
 {
-    if (!log_level_initialized)
-    {
-        log_level=yaz_log_module_level("nmem");
-        log_level_initialized=1;
-    }
     
     if (++nmem_init_flag == 1)
     {
 #ifdef WIN32
        InitializeCriticalSection(&critical_section);
 #elif YAZ_GNU_THREADS
-       yaz_log (log_level, "pth_init"); /* ??? */
         pth_init ();
 #endif
        nmem_active_no = 0;
        freelist = NULL;
        cfreelist = NULL;
     }
+    if (!log_level_initialized)
+    {
+        log_level = yaz_log_module_level("nmem");
+        log_level_initialized = 1;
+    }
 }
 
 void nmem_exit (void)