Index: trunk/ppStack/src/ppStackLoop.c
===================================================================
--- trunk/ppStack/src/ppStackLoop.c	(revision 20508)
+++ trunk/ppStack/src/ppStackLoop.c	(revision 20568)
@@ -772,4 +772,6 @@
         }
 
+        int stride = psMetadataLookupS32(NULL, ppsub, "STRIDE"); // Size of convolution patches
+
         // Reject bad pixels
         for (int i = 0; i < num; i++) {
@@ -791,5 +793,5 @@
 #endif
 
-            psPixels *reject = pmStackReject(inspect->data[i], numCols, numRows, threshold, poorFrac,
+            psPixels *reject = pmStackReject(inspect->data[i], numCols, numRows, threshold, poorFrac, stride,
                                              subRegions->data[i], subKernels->data[i]); // Rejected pixels
 
Index: trunk/ppStack/src/ppStackMatch.c
===================================================================
--- trunk/ppStack/src/ppStackMatch.c	(revision 20508)
+++ trunk/ppStack/src/ppStackMatch.c	(revision 20568)
@@ -151,4 +151,5 @@
             int footprint = psMetadataLookupS32(NULL, ppsub, "STAMP.FOOTPRINT"); // Stamp half-size
             float threshold = psMetadataLookupF32(NULL, ppsub, "STAMP.THRESHOLD"); // Threshold for stmps
+            int stride = psMetadataLookupS32(NULL, ppsub, "STRIDE"); // Size of convolution patches
             int iter = psMetadataLookupS32(NULL, ppsub, "ITER"); // Rejection iterations
             float rej = psMetadataLookupF32(NULL, ppsub, "REJ"); // Rejection threshold
@@ -228,8 +229,8 @@
 
             // Do the image matching
-            if (!pmSubtractionMatch(output, NULL, readout, fake, footprint, regionSize, spacing, threshold,
-                                    sources, stampsName, type, size, order, widths, orders, inner, ringsOrder,
-                                    binning, penalty, optimum, optWidths, optOrder, optThresh, iter, rej,
-                                    sysError, maskVal, maskBad, maskPoor, poorFrac, badFrac,
+            if (!pmSubtractionMatch(output, NULL, readout, fake, footprint, stride, regionSize, spacing,
+                                    threshold, sources, stampsName, type, size, order, widths, orders, inner,
+                                    ringsOrder, binning, penalty, optimum, optWidths, optOrder, optThresh,
+                                    iter, rej, sysError, maskVal, maskBad, maskPoor, poorFrac, badFrac,
                                     PM_SUBTRACTION_MODE_1)) {
                 psError(PS_ERR_UNKNOWN, false, "Unable to match images.");
