Index: trunk/ppStack/src/ppStackMatch.c
===================================================================
--- trunk/ppStack/src/ppStackMatch.c	(revision 35455)
+++ trunk/ppStack/src/ppStackMatch.c	(revision 35868)
@@ -467,9 +467,15 @@
 		sum += kernels->rms;
                 num++;
-		//		psLogMsg("ppStack", PS_LOG_INFO, "KERNMATCHDUMP %d %d %g %g %g\n",
-		//			 index,num,kernels->mean,kernels->rms,sum);
+		//				psLogMsg("ppStack", PS_LOG_INFO, "KERNMATCHDUMP %d %d %g %g %g %g\n",
+		//					 index,num,kernels->mean,kernels->rms,sum,psImageCovarianceFactor(readout->covariance));
             }
             psFree(iter);
-            options->matchChi2->data.F32[index] = sum / (psImageCovarianceFactor(readout->covariance) * num);
+
+	    // Apply the covariance factor to the chi^2 value
+	    double covar_factor = 1.0;
+	    if (type != PM_SUBTRACTION_KERNEL_SIMPLE) { // Except if we're using simple kernels.
+	      covar_factor = psImageCovarianceFactor(readout->covariance);
+	    }
+            options->matchChi2->data.F32[index] = sum / (covar_factor * num);
 
         }
