Index: /trunk/ppStack/src/ppStackPrepare.c
===================================================================
--- /trunk/ppStack/src/ppStackPrepare.c	(revision 26917)
+++ /trunk/ppStack/src/ppStackPrepare.c	(revision 26918)
@@ -239,27 +239,24 @@
         havePSFs = true;
 
-        if (psf->trendNx > 0 && psf->trendNy > 0) {
-            double sumFWHM = 0.0;           // FWHM for image
-            int numFWHM = 0;                // Number of FWHM measurements
-            for (int y = 0; y < psf->trendNy; y++) {
-                float yPos = ((float)y + 0.5) / (float)psf->trendNy * numRows;
-                for (int x = 0; x < psf->trendNx; x++) {
-                    float xPos = ((float)x + 0.5) / (float)psf->trendNx * numCols;
-                    float fwhm = pmPSFtoFWHM(psf, xPos, yPos); // FWHM for image
-                    if (isfinite(fwhm)) {
-                        sumFWHM += fwhm;
-                        numFWHM++;
-                    }
+        int xNum = PS_MAX(psf->trendNx, 1), yNum = PS_MAX(psf->trendNy, 1); // Number of realisations
+        double sumFWHM = 0.0;           // FWHM for image
+        int numFWHM = 0;                // Number of FWHM measurements
+        for (int y = 0; y < yNum; y++) {
+            float yPos = ((float)y + 0.5) / (float)yNum * numRows;
+            for (int x = 0; x < xNum; x++) {
+                float xPos = ((float)x + 0.5) / (float)xNum * numCols;
+                float fwhm = pmPSFtoFWHM(psf, xPos, yPos); // FWHM for image
+                if (isfinite(fwhm)) {
+                    sumFWHM += fwhm;
+                    numFWHM++;
                 }
             }
-            if (numFWHM == 0) {
-                options->inputSeeing->data.F32[i] = NAN;
-                options->inputMask->data.PS_TYPE_VECTOR_MASK_DATA[i] = PPSTACK_MASK_PSF;
-                psLogMsg("ppStack", PS_LOG_INFO, "Unable to measure PSF FWHM for image %d --- rejected.", i);
-            } else {
-                options->inputSeeing->data.F32[i] = sumFWHM / (float)numFWHM;
-            }
+        }
+        if (numFWHM == 0) {
+            options->inputSeeing->data.F32[i] = NAN;
+            options->inputMask->data.PS_TYPE_VECTOR_MASK_DATA[i] = PPSTACK_MASK_PSF;
+            psLogMsg("ppStack", PS_LOG_INFO, "Unable to measure PSF FWHM for image %d --- rejected.", i);
         } else {
-            options->inputSeeing->data.F32[i] = pmPSFtoFWHM(psf, 0.5 * numCols, 0.5 * numRows);
+            options->inputSeeing->data.F32[i] = sumFWHM / (float)numFWHM;
         }
 
