Index: trunk/psphot/src/psUtils.c
===================================================================
--- trunk/psphot/src/psUtils.c	(revision 4375)
+++ trunk/psphot/src/psUtils.c	(revision 4901)
@@ -2,4 +2,21 @@
 
 static psHash *timers = NULL;
+
+bool psTimerClear (char *name) {
+
+  bool status;
+
+  if (name == NULL) return false;
+
+  status = psHashRemove (timers, name);
+  return (status);
+}
+
+void psTimerFree () {
+
+  psFree (timers);
+  p_psTimeFinalize();
+  return;
+}
 
 // start/restart a named timer
@@ -11,7 +28,6 @@
 
     start = psTimeGetTime (PS_TIME_UTC);
-
     psHashAdd (timers, name, start);
-
+    psFree (start); 
     return (TRUE);
 }
@@ -31,4 +47,7 @@
     mark = psTimeGetTime (PS_TIME_UTC);
     delta = psTimeDelta (mark, start);
+    psFree (mark);
+    // psFree (start); -- XXX is psHashLookup not psMemCopying?
+
     return (delta);
 }
@@ -191,4 +210,5 @@
 	    }
 	    *status = true;
+	    // psFree (item);
 	    return (value);
 	}	
@@ -198,4 +218,5 @@
     if (item->type == PS_META_F32) {
 	value = item->data.F32;
+	// psFree (item);
 	return (value);
     }
