Index: trunk/psphot/src/psphotExtendedSourceFits.c
===================================================================
--- trunk/psphot/src/psphotExtendedSourceFits.c	(revision 21183)
+++ trunk/psphot/src/psphotExtendedSourceFits.c	(revision 21519)
@@ -110,5 +110,5 @@
 
         // replace object in image
-        if (source->mode & PM_SOURCE_MODE_SUBTRACTED) {
+        if (source->tmpFlags & PM_SOURCE_TMPF_SUBTRACTED) {
             pmSourceAdd (source, PM_MODEL_OP_FULL, maskVal);
         }
@@ -170,4 +170,5 @@
               if (!(modelFit->flags & (PM_MODEL_STATUS_BADARGS | PM_MODEL_STATUS_NONCONVERGE | PM_MODEL_STATUS_OFFIMAGE))) {
                   NconvolvePass ++;
+		  source->mode |= PM_SOURCE_MODE_EXTENDED_FIT;
               }
           } else {
@@ -184,4 +185,5 @@
               if (!(modelFit->flags & (PM_MODEL_STATUS_BADARGS | PM_MODEL_STATUS_NONCONVERGE | PM_MODEL_STATUS_OFFIMAGE))) {
                   NplainPass ++;
+		  source->mode |= PM_SOURCE_MODE_EXTENDED_FIT;
               }
           }
@@ -224,5 +226,5 @@
 
           pmSourceSub (source, PM_MODEL_OP_FULL, maskVal);
-          source->mode |= PM_SOURCE_MODE_SUBTRACTED;
+          source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED;
 
           psFree (modelFluxes);
@@ -251,5 +253,5 @@
         // subtract the best fit from the object, leave local sky
         pmSourceSub (source, PM_MODEL_OP_FULL, maskVal);
-        source->mode |= PM_SOURCE_MODE_SUBTRACTED;
+        source->tmpFlags |= PM_SOURCE_TMPF_SUBTRACTED;
 
         // the initial model flux is no longer needed
