+
+#if NMEM_DEBUG
+ yaz_log (LOG_DEBUG, "%s:%d: nmem_destroy %d p=%p", file, line,
+ nmem_active_no-1, n);
+ NMEM_ENTER;
+ for (debug_p = &nmem_debug_list; *debug_p; debug_p = &(*debug_p)->next)
+ if ((*debug_p)->p == n)
+ {
+ struct nmem_debug *debug_save = *debug_p;
+ *debug_p = (*debug_p)->next;
+ xfree (debug_save);
+ ok = 1;
+ break;
+ }
+ NMEM_LEAVE;
+ nmem_print_list();
+ if (!ok)
+ {
+ yaz_log (LOG_WARN, "%s:%d destroying unallocated nmem block p=%p",
+ file, line, n);
+ return;
+ }
+#endif