Index: /trunk/ppSub/src/ppSubMatchPSFs.c
===================================================================
--- /trunk/ppSub/src/ppSubMatchPSFs.c	(revision 42844)
+++ /trunk/ppSub/src/ppSubMatchPSFs.c	(revision 42845)
@@ -155,4 +155,8 @@
     }
     psLogMsg("ppSub", PS_LOG_INFO, "Input FWHM: %f\nReference FWHM: %f\n", inFWHM, refFWHM);
+
+# define SET_QUALITY_INSTEAD_OF_ERROR 
+    // Bill Sweeney added the following block to cleanly handle bad FWHMs as a bad quality
+    // instead of failing with a fault, but left the code inactive.  Activate it here
     if (!isfinite(inFWHM) || !isfinite(refFWHM)) {
 #ifdef SET_QUALITY_INSTEAD_OF_ERROR
@@ -458,9 +462,9 @@
             ppSubDataQuality(data, error, PPSUB_FILES_ALL);
             return true;
-        // XX } else if (error == PM_ERR_DATA) {
-        // XX     psErrorStackPrint(stderr, "Unable to solve for the kernel to match images");
-        // XX     psWarning("Failed to find PSF match kernel --- suspect bad data quality.");
-        // XX     ppSubDataQuality(data, error, PPSUB_FILES_ALL);
-        // XX     return true;
+	} else if (error == PM_ERR_DATA) {
+             psErrorStackPrint(stderr, "Unable to solve for the kernel to match images");
+             psWarning("Failed to find PSF match kernel --- suspect bad data quality.");
+             ppSubDataQuality(data, error, PPSUB_FILES_ALL);
+             return true;
         } else {
             psError(PPSUB_ERR_DATA, false, "Unable to match images.");
