Index: /trunk/archive/pslib/src/Metadata/metadata.c
===================================================================
--- /trunk/archive/pslib/src/Metadata/metadata.c	(revision 565)
+++ /trunk/archive/pslib/src/Metadata/metadata.c	(revision 566)
@@ -26,4 +26,7 @@
 {
     if (ms == NULL) {
+	return;
+    } else if (psMemGetRefCounter(ms) > 1) {
+	psMemDecrRefCounter(ms);
 	return;
     }
@@ -223,5 +226,5 @@
 	psError(__func__, PS_ERR_UNKNOWN, PS_NEW_ERROR,
 		"Key \"%s\" is already present in the metaDataSet 0x%x", item->name, ms);
-	//psMetadataItemFree(item);
+	psMetadataItemFree(item);
 
 	return NULL;
@@ -236,5 +239,5 @@
 /************************************************************************************************************/
 /*
- * Convenience wrapper for psMetadataAppend()
+ * Convenience wrapper for psMetadataAppendItem()
  */
 psMetadataItem *psMetadataAppend(psMetadata *restrict md, ///< Metadata to add to
@@ -258,5 +261,4 @@
 }
 
-
 /*****************************************************************************/
 /*
Index: /trunk/archive/pslib/src/Utils/memory.c
===================================================================
--- /trunk/archive/pslib/src/Utils/memory.c	(revision 565)
+++ /trunk/archive/pslib/src/Utils/memory.c	(revision 566)
@@ -54,5 +54,5 @@
 static psMemExhaustedCB memExhaustedCB = memExhaustedCB0;
 
-psMemExhaustedCB psMemExhaustedSetCB(psMemExhaustedCB func)
+psMemExhaustedCB psMemExhaustedCBSet(psMemExhaustedCB func)
 {
     psMemExhaustedCB old = memExhaustedCB;
@@ -91,5 +91,5 @@
 static psMemProblemCB memProblemCB = memProblemCB0;
 
-psMemProblemCB psMemProblemSetCB(psMemProblemCB func)
+psMemProblemCB psMemProblemCBSet(psMemProblemCB func)
 {
     psMemProblemCB old = memProblemCB;
@@ -107,5 +107,5 @@
 long p_psMemFreeID = 0;			// notify user this block is freed
 
-long psMemSetAllocateID(long id)	// set p_psMemAllocateID to id
+long psMemAllocateIDSet(long id)	// set p_psMemAllocateID to id
 {
     long old = p_psMemAllocateID;
@@ -115,5 +115,5 @@
 }
 
-long psMemSetFreeID(long id)		// set p_psMemFreeID to id
+long psMemFreeIDSet(long id)		// set p_psMemFreeID to id
 {
     long old = p_psMemFreeID;
@@ -153,5 +153,5 @@
 static psMemFreeCB memFreeCB = memFreeCB0;
 
-psMemAllocateCB psMemAllocateSetCB(psMemAllocateCB func)
+psMemAllocateCB psMemAllocateCBSet(psMemAllocateCB func)
 {
     psMemAllocateCB old = memAllocateCB;
@@ -162,5 +162,5 @@
 }
 
-psMemFreeCB psMemFreeSetCB(psMemFreeCB func)
+psMemFreeCB psMemFreeCBSet(psMemFreeCB func)
 {
     psMemFreeCB old = memFreeCB;
Index: /trunk/archive/pslib/src/Utils/tst_memory.c
===================================================================
--- /trunk/archive/pslib/src/Utils/tst_memory.c	(revision 565)
+++ /trunk/archive/pslib/src/Utils/tst_memory.c	(revision 566)
@@ -9,5 +9,5 @@
  * My callbacks
  */
-static int my_MemAllocateCB(const psMemBlock *ptr)
+static long my_MemAllocateCB(const psMemBlock *ptr)
 {
     static int incr = 0;		// "p_psMemAllocateID += incr"
@@ -54,11 +54,11 @@
      * Install my callbacks
      */
-    (void)psMemAllocateSetCB(my_MemAllocateCB);
-    default_MemProblemCB = psMemProblemSetCB(my_MemProblemCB);
-    (void)psMemExhaustedSetCB(my_MemExhaustedCB);
+    (void)psMemAllocateCBSet(my_MemAllocateCB);
+    default_MemProblemCB = psMemProblemCBSet(my_MemProblemCB);
+    (void)psMemExhaustedCBSet(my_MemExhaustedCB);
     /*
      * Request callback on first allocation
      */
-    (void)psMemSetAllocateID(1);
+    (void)psMemAllocateIDSet(1);
     /*
      * Start allocating
Index: /trunk/archive/pslib/src/Utils/tst_trace.c
===================================================================
--- /trunk/archive/pslib/src/Utils/tst_trace.c	(revision 565)
+++ /trunk/archive/pslib/src/Utils/tst_trace.c	(revision 566)
@@ -6,5 +6,5 @@
 #include "psLib.h"
 
-static int my_MemAllocateCB(const psMemBlock *ptr)
+static long my_MemAllocateCB(const psMemBlock *ptr)
 {
     static int n = 1;			// "p_psMemAllocateID += n"
@@ -23,8 +23,8 @@
     psSetLogFormat("NM");		// suppress some of the psLogMsg verbosity
 
-    (void)psMemAllocateSetCB(my_MemAllocateCB);
-    //(void)psMemFreeSetCB(my_MemAllocateCB);
-    psMemSetAllocateID(1);
-    psMemSetFreeID(14);
+    (void)psMemAllocateCBSet(my_MemAllocateCB);
+    //(void)psMemFreeCBSet(my_MemAllocateCB);
+    psMemAllocateIDSet(1);
+    psMemFreeIDSet(14);
     
 #if 0
