Index: /trunk/psModules/src/imcombine/pmStack.c
===================================================================
--- /trunk/psModules/src/imcombine/pmStack.c	(revision 19238)
+++ /trunk/psModules/src/imcombine/pmStack.c	(revision 19239)
@@ -8,6 +8,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.33 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2008-08-26 02:06:44 $
+ *  @version $Revision: 1.34 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2008-08-27 22:02:35 $
  *  Copyright 2004-2007 Institute for Astronomy, University of Hawaii
  *
@@ -343,8 +343,7 @@
                   // Convert to rejection limits --- saves doing it later.
                   // Using squared rejection limit because it's cheaper than sqrts
-                  rej *= rej;
+                  float rej2 = PS_SQR(rej); // Rejection level squared
                   for (int i = 0; i < num; i++) {
-                      pixelVariances->data.F32[i] = rej * pixelVariances->data.F32[i] *
-                          varFactors->data.F32[i];
+                      pixelVariances->data.F32[i] *= rej2 * varFactors->data.F32[i];
                   }
               }
@@ -380,11 +379,11 @@
                       continue;
                   }
-                  float diff = fabsf(pixelData->data.F32[j] - median); // Difference from expected
+                  float diff = pixelData->data.F32[j] - median; // Difference from expected
                   if (useVariance) {
                       // Comparing squares --- cheaper than lots of sqrts
-                      if (PS_SQR(diff) > pixelVariances->data.F32[i]) {
+                      if (PS_SQR(diff) > pixelVariances->data.F32[j]) {
                           MASK_PIXEL_FOR_INSPECTION();
                       }
-                  } else if (diff > limit) {
+                  } else if (fabsf(diff) > limit) {
                       MASK_PIXEL_FOR_INSPECTION();
                   }
