Index: trunk/ppImage/src/ppImageReplaceBackground.c
===================================================================
--- trunk/ppImage/src/ppImageReplaceBackground.c	(revision 20863)
+++ trunk/ppImage/src/ppImageReplaceBackground.c	(revision 21183)
@@ -30,8 +30,8 @@
     // XXX Should this be options->maskValue or options->maskValue & ~options->satMask?
     //     The latter will leave saturated pixels high
-    psMaskType maskVal = options->maskValue;
+    psImageMaskType maskVal = options->maskValue;
 
     // user-defined masks to test for good/bad pixels (build from recipe list if not yet set)
-    psMetadataAddU8(psphotRecipe, PS_LIST_TAIL, "MASK.PSPHOT", PS_META_REPLACE, "user-defined mask", maskVal);
+    psMetadataAddImageMask(psphotRecipe, PS_LIST_TAIL, "MASK.PSPHOT", PS_META_REPLACE, "user-defined mask", maskVal);
 
     // Since we are working on a chip-mosaicked image, there should only be a single cell and readout
@@ -146,5 +146,5 @@
             if (!isfinite(value)) {
                 image->data.F32[y][x] = NAN;
-                mask->data.PS_TYPE_MASK_DATA[y][x] |= options->badMask;
+                mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] |= options->badMask;
             } else {
                 image->data.F32[y][x] -= value;
@@ -157,5 +157,5 @@
     for (int y = 0; y < numRows; y++) {
         for (int x = 0; x < numCols; x++) {
-            if (mask && mask->data.PS_TYPE_MASK_DATA[y][x] & maskVal) {
+            if (mask && mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] & maskVal) {
                 image->data.F32[y][x] = 0.0;
             } else {
@@ -163,5 +163,5 @@
                 if (!isfinite(value)) {
                     image->data.F32[y][x] = NAN;
-                    mask->data.PS_TYPE_MASK_DATA[y][x] |= options->badMask;
+                    mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] |= options->badMask;
                 } else {
                     image->data.F32[y][x] -= value;
