Index: trunk/psModules/src/imcombine/pmSubtractionMask.c
===================================================================
--- trunk/psModules/src/imcombine/pmSubtractionMask.c	(revision 24212)
+++ trunk/psModules/src/imcombine/pmSubtractionMask.c	(revision 24257)
@@ -6,4 +6,5 @@
 #include <pslib.h>
 
+#include "pmErrorCodes.h"
 #include "pmSubtraction.h"
 #include "pmSubtractionKernels.h"
@@ -78,5 +79,5 @@
         }
         if (numBad > badFrac * numCols * numRows) {
-            psError(PS_ERR_BAD_PARAMETER_VALUE, true,
+            psError(PM_ERR_SMALL_AREA, true,
                     "Fraction of bad pixels (%d/%d=%f) exceeds limit (%f)\n",
                     numBad, numCols * numRows, (float)numBad/(float)(numCols * numRows), badFrac);
Index: trunk/psModules/src/imcombine/pmSubtractionMatch.c
===================================================================
--- trunk/psModules/src/imcombine/pmSubtractionMatch.c	(revision 24212)
+++ trunk/psModules/src/imcombine/pmSubtractionMatch.c	(revision 24257)
@@ -246,5 +246,5 @@
                                          badFrac, mode); // Subtraction mask
     if (!subMask) {
-        psError(PS_ERR_UNKNOWN, false, "Unable to generate subtraction mask.");
+        psError(psErrorCodeLast(), false, "Unable to generate subtraction mask.");
         psFree(kernels);
         psFree(regions);
