Index: trunk/psphot/src/psphotChoosePSF.c
===================================================================
--- trunk/psphot/src/psphotChoosePSF.c	(revision 17555)
+++ trunk/psphot/src/psphotChoosePSF.c	(revision 17954)
@@ -106,8 +106,11 @@
     // generate a psf model using the first selection
     if (stars->n == 0) {
-        // XXX optionally give up here
         psError(PSPHOT_ERR_PSF, false, "Failed to fit any models when choosing PSF");
-        psErrorStackPrint (stderr, "Using guess PSF model");
-        psErrorClear ();
+        bool mdok;                      // Status of MD lookup
+        if (!psMetadataLookupBool(&mdok, recipe, PSPHOT_RECIPE_PSF_FAKE_ALLOW)) {
+            return false;
+        }
+        psErrorStackPrint(stderr, "Using guess PSF model");
+        psErrorClear();
 
         psFree(options);
@@ -175,11 +178,12 @@
         psFree (stars);
 
-        // XXX optionally give up here
-	// test for PSPHOT.recipe & return false on failure.
-
+        psError(PSPHOT_ERR_PSF, false, "Failed to fit any models when choosing PSF");
+        bool mdok;                      // Status of MD lookup
+        if (!psMetadataLookupBool(&mdok, recipe, PSPHOT_RECIPE_PSF_FAKE_ALLOW)) {
+            return false;
+        }
         // generate a psf model using the first selection
-        psError(PSPHOT_ERR_PSF, false, "Failed to fit any models when choosing PSF");
         psErrorStackPrint (stderr, "Using guess PSF model");
-        psErrorClear ();
+        psErrorClear();
 
         psFree(options);
