Index: trunk/ppViz/src/ppVizPSF/ppVizPSFCamera.c
===================================================================
--- trunk/ppViz/src/ppVizPSF/ppVizPSFCamera.c	(revision 26364)
+++ trunk/ppViz/src/ppVizPSF/ppVizPSFCamera.c	(revision 26367)
@@ -39,10 +39,12 @@
     }
 
-    fileArguments("SOURCES", data->sourcesName, "Input sources", data->config);
-    pmFPAfile *srcs = pmFPAfileBindFromArgs(&status, psf, data->config,
-                                            "PSPHOT.INPUT.CMF", "SOURCES"); // File
-    if (!status || !srcs) {
-        psError(PS_ERR_IO, false, "Failed to build file from PSPHOT.INPUT.CMF");
-        return false;
+    if (data->sourcesName) {
+        fileArguments("SOURCES", data->sourcesName, "Input sources", data->config);
+        pmFPAfile *srcs = pmFPAfileBindFromArgs(&status, psf, data->config,
+                                                "PSPHOT.INPUT.CMF", "SOURCES"); // File
+        if (!status || !srcs) {
+            psError(PS_ERR_IO, false, "Failed to build file from PSPHOT.INPUT.CMF");
+            return false;
+        }
     }
 
@@ -67,4 +69,12 @@
     }
 
+    if (!data->sourcesName) {
+        data->size = psMetadataLookupS32(NULL, recipe, "SIZE"); // Size of PSF
+        if (data->size <= 0) {
+            psError(PS_ERR_BAD_PARAMETER_VALUE, true, "Unable to find legitimate value for SIZE");
+            return false;
+        }
+    }
+
     return true;
 }
