Index: trunk/ippTools/src/p2searchDoneFrames.c
===================================================================
--- trunk/ippTools/src/p2searchDoneFrames.c	(revision 6210)
+++ trunk/ippTools/src/p2searchDoneFrames.c	(revision 6214)
@@ -5,23 +5,6 @@
     PS_ASSERT_PTR_NON_NULL(config, NULL);
 
-    psMetadata *where = psMetadataAlloc ();
-
-    if (config->camera_name != NULL) {
-        psMetadataAddStr(where, PS_LIST_TAIL, "camera", 0, "==",
-            config->camera_name);
-    }
-    if (config->filter != NULL) {
-        psMetadataAddStr(where, PS_LIST_TAIL, "filter", 0, "==",
-            config->filter);
-    }
-
-    if (where->list->n < 1) {
-       psFree(where);
-       where = NULL;
-    }
-
-    psArray *exposures = p2DoneExpSelectRowObjects(config->database, where, 
-        MAX_ROWS);
-    psFree (where);
+    psArray *exposures = p2DoneExpSelectRowObjects(config->database,
+        config->where, MAX_ROWS);
     if (!exposures) {
         psError(PS_ERR_UNKNOWN, false, "no p2DoneExp rows found");
@@ -34,9 +17,9 @@
     frames->n = 0;
 
-    // 'where' to select each exposure
-    where = psMetadataAlloc ();
     for (int i = 0; i < exposures->n; i++) {
         p2DoneExpRow *exposure = exposures->data[i];
 
+        // 'where' to select each exposure
+        psMetadata *where = psMetadataAlloc ();
         psMetadataAddStr(where, PS_LIST_TAIL, "exp_id", PS_META_REPLACE, "==",
             exposure->exp_id);
@@ -44,4 +27,5 @@
         psArray *images = p2DoneImfileSelectRowObjects(config->database, where,
             MAX_ROWS);
+        psFree(where);
         if (!images) {
             psError(PS_ERR_UNKNOWN, false, "database access failed");
