Index: trunk/psphot/src/psphot.h
===================================================================
--- trunk/psphot/src/psphot.h	(revision 23535)
+++ trunk/psphot/src/psphot.h	(revision 23688)
@@ -31,4 +31,6 @@
 bool            psphotReadoutCleanup (pmConfig *config, pmReadout *readout, psMetadata *recipe, pmDetections *detections, pmPSF *psf, psArray *sources);
 bool            psphotDefineFiles (pmConfig *config, pmFPAfile *input);
+void            psphotFilesActivate(pmConfig *config, bool state);
+
 bool            psphotSetMaskBits (pmConfig *config);
 bool            psphotSetMaskRecipe (pmConfig *config, psImageMaskType maskValue, psImageMaskType markValue);
Index: trunk/psphot/src/psphotDefineFiles.c
===================================================================
--- trunk/psphot/src/psphotDefineFiles.c	(revision 23535)
+++ trunk/psphot/src/psphotDefineFiles.c	(revision 23688)
@@ -1,3 +1,9 @@
 # include "psphotInternal.h"
+
+// List of output files
+static const char *outputFiles[] = { "PSPHOT.OUTPUT", "PSPHOT.RESID", "PSPHOT.BACKMDL",
+                                     "PSPHOT.BACKMDL.STDEV", "PSPHOT.BACKGND", "PSPHOT.BACKSUB",
+                                     "PSPHOT.PSF.SAVE", "SOURCE.PLOT.MOMENTS", "SOURCE.PLOT.PSFMODEL",
+                                     "SOURCE.PLOT.APRESID", NULL };
 
 // XXX we need to be able to distinguish several cases:
@@ -133,2 +139,13 @@
     return true;
 }
+
+void psphotFilesActivate(pmConfig *config, bool state)
+{
+    for (int i = 0; outputFiles[i]; i++) {
+        if (!pmFPAfileActivate(config->files, state, outputFiles[i])) {
+            psErrorClear();
+        }
+    }
+
+    return;
+}
Index: trunk/psphot/src/psphotMaskReadout.c
===================================================================
--- trunk/psphot/src/psphotMaskReadout.c	(revision 23535)
+++ trunk/psphot/src/psphotMaskReadout.c	(revision 23688)
@@ -39,8 +39,8 @@
       psImage *mk = readout->mask;
       for (int j = 0; j < im->numRows; j++) {
-	for (int i = 0; i < im->numCols; i++) {
-	  if (isfinite(im->data.F32[j][i]) && isfinite(wt->data.F32[j][i])) continue;
-	  mk->data.PS_TYPE_IMAGE_MASK_DATA[j][i] |= maskBad;
-	}
+        for (int i = 0; i < im->numCols; i++) {
+          if (isfinite(im->data.F32[j][i]) && isfinite(wt->data.F32[j][i])) continue;
+          mk->data.PS_TYPE_IMAGE_MASK_DATA[j][i] |= maskBad;
+        }
       }
     }
