Index: /trunk/psModules/src/camera/pmFPAfileDefine.c
===================================================================
--- /trunk/psModules/src/camera/pmFPAfileDefine.c	(revision 11241)
+++ /trunk/psModules/src/camera/pmFPAfileDefine.c	(revision 11242)
@@ -267,5 +267,4 @@
     psArray *infiles = psMetadataLookupPtr(&status, config->arguments, argname);
     if (!status) {
-        //        psTrace("psModules.camera", 5, "Failed to find %s in argument list", argname);
         psError(PS_ERR_UNEXPECTED_NULL, false, "Failed to find %s in argument list", argname);
         return NULL;
@@ -326,4 +325,5 @@
         return NULL;
     }
+    file->format = format;
 
     // adjust the rules to identify these files in the file->names data
@@ -373,5 +373,12 @@
                 return NULL;
             }
-            if (!pmConfigValidateCameraFormat (format, phu)) {
+            bool valid = false;
+            if (!pmConfigValidateCameraFormat (&valid, format, phu)) {
+                psError (PS_ERR_UNKNOWN, false, "Error in config scripts\n");
+                psFree (realName);
+                psFitsClose (fits);
+                return NULL;
+            }
+            if (!valid) {
                 psError(PS_ERR_IO, false, "file %s is not from the required camera", realName);
                 psFree (realName);
@@ -404,6 +411,4 @@
     }
     psFree (fpa);
-
-    file->format = format;
     if (found)
         *found = true;
@@ -492,5 +497,12 @@
             return NULL;
         }
-        if (!pmConfigValidateCameraFormat (input->format, phu)) {
+        bool valid = false;
+        if (!pmConfigValidateCameraFormat (&valid, input->format, phu)) {
+            psError (PS_ERR_UNKNOWN, false, "Error in config scripts\n");
+            psFree (realName);
+            psFitsClose (fits);
+            return NULL;
+        }
+        if (!valid) {
             psError(PS_ERR_IO, false, "specified data file %s does not match format of supplied INPUT\n", realName);
             psFree (realName);
Index: /trunk/psModules/src/camera/pmFPAfileIO.c
===================================================================
--- /trunk/psModules/src/camera/pmFPAfileIO.c	(revision 11241)
+++ /trunk/psModules/src/camera/pmFPAfileIO.c	(revision 11242)
@@ -89,5 +89,15 @@
                 }
             } else {
-                pmConfigValidateCameraFormat (file->format, phu);
+                bool valid;
+                if (!pmConfigValidateCameraFormat (&valid, file->format, phu)) {
+                    psError (PS_ERR_UNKNOWN, false, "Error in config scripts\n");
+                    psFree (phu);
+                    return NULL;
+                }
+                if (!valid) {
+                    psError(PS_ERR_IO, false, "file %s is not from the required camera", file->filename);
+                    psFree (phu);
+                    return NULL;
+                }
             }
             pmFPAview *thisView = pmFPAAddSourceFromHeader (file->fpa, phu, file->format);
