Index: trunk/ippTools/src/dettool.c
===================================================================
--- trunk/ippTools/src/dettool.c	(revision 7659)
+++ trunk/ippTools/src/dettool.c	(revision 7671)
@@ -172,4 +172,5 @@
     if (!psDBTransaction(config->dbh)) {
         psError(PS_ERR_UNKNOWN, false, "database error");
+        psFree(detrendExps);
         return false;
     }
@@ -193,4 +194,6 @@
     }
 
+    psFree(detrendExps);
+
     for (long i = 0; i < psArrayLength(inputExps); i++) {
         if (!detInputExpInsertObject(config->dbh, inputExps->data[i])) {
@@ -200,7 +203,9 @@
                 psError(PS_ERR_UNKNOWN, false, "database error");
             }
+            psFree(inputExps);
             return false;
         }
     }
+    psFree(inputExps);
 
     // point of no return for det_id creation
Index: trunk/ippTools/src/dettoolConfig.c
===================================================================
--- trunk/ippTools/src/dettoolConfig.c	(revision 7659)
+++ trunk/ippTools/src/dettoolConfig.c	(revision 7671)
@@ -409,4 +409,6 @@
     psFree(stacframeArgs);
     psFree(addnormalizedArgs);
+    psFree(normalizedArgs);
+    psFree(normalizedframeArgs);
     psFree(addresidArgs);
     psFree(residArgs);
Index: trunk/ippTools/src/pxconfig.c
===================================================================
--- trunk/ippTools/src/pxconfig.c	(revision 7659)
+++ trunk/ippTools/src/pxconfig.c	(revision 7671)
@@ -37,5 +37,5 @@
     psFree(config->exp_type);
     psFree(config->filter);
-    psFree(config->dbh);
+    psDBCleanup(config->dbh);
     psFree(config->modules);
     psFree(config->exp_id);
