Index: /tags/ipp-unions-20250528/psModules/src/objects/pmSourceMatch.c
===================================================================
--- /tags/ipp-unions-20250528/psModules/src/objects/pmSourceMatch.c	(revision 42903)
+++ /tags/ipp-unions-20250528/psModules/src/objects/pmSourceMatch.c	(revision 42904)
@@ -429,4 +429,6 @@
             numMeasurements++;
             int index = match->image->data.U32[j]; // Image index
+            if (badImage->data.U8[index]) { continue; }
+
             float mag = match->mag->data.F32[j]; // Measured magnitude
             double magErr2 = PS_SQR(match->magErr->data.F32[j]) + sysErr2; // Error in measured magnitude
@@ -459,4 +461,6 @@
             }
             int index = match->image->data.U32[j]; // Image index
+            if (badImage->data.U8[index]) { continue; }
+
             float mag = match->mag->data.F32[j]; // Measured magnitude
             double magErr2 = PS_SQR(match->magErr->data.F32[j]) + sysErr2; // Error in measured magnitude
@@ -487,7 +491,6 @@
             }
             int index = match->image->data.U32[j]; // Image index
-            if (badImage->data.U8[index]) {
-                continue;
-            }
+            if (badImage->data.U8[index]) { continue; }
+
             float mag = match->mag->data.F32[j]; // Measured magnitude
             float magErr2 = PS_SQR(match->magErr->data.F32[j]) + sysErr2; // Error in measured magnitude
@@ -607,7 +610,6 @@
             numMeasurements++;
             int index = match->image->data.U32[j]; // Image index
-            if (badImage->data.U8[index]) {
-                continue;
-            }
+            if (badImage->data.U8[index]) { continue; }
+
             float mag = match->mag->data.F32[j]; // Measured magnitude
             float magErr = match->magErr->data.F32[j]; // Error in measured magnitude
@@ -857,4 +859,5 @@
 
             int index = match->image->data.U32[j]; // Image index
+
             float dx = match->x->data.F32[j] - xShift->data.F32[index] - xStar->data.F32[i];
             float dy = match->y->data.F32[j] - yShift->data.F32[index] - yStar->data.F32[i];
