Index: branches/czw_branch/20120906/ppStack/src/ppStackCamera.c
===================================================================
--- branches/czw_branch/20120906/ppStack/src/ppStackCamera.c	(revision 34531)
+++ branches/czw_branch/20120906/ppStack/src/ppStackCamera.c	(revision 34623)
@@ -223,5 +223,4 @@
 	      pmFPAfile *inputBKG = defineFile(config,NULL,"PPSTACK.INPUT.BKGMODEL",bkgmodel,
 					       PM_FPA_FILE_IMAGE);
-	      fprintf(stderr,"ppSC: %s\n",bkgmodel);
 	      if (!inputBKG) {
 		psError(psErrorCodeLast(), false,
Index: branches/czw_branch/20120906/ppStack/src/ppStackCleanup.c
===================================================================
--- branches/czw_branch/20120906/ppStack/src/ppStackCleanup.c	(revision 34531)
+++ branches/czw_branch/20120906/ppStack/src/ppStackCleanup.c	(revision 34623)
@@ -28,9 +28,11 @@
     options->expRO = NULL;
 
-    options->bkgRO->data_exists = false;
-    options->bkgRO->parent->data_exists = false;
-    options->bkgRO->parent->parent->data_exists = false;
-    psFree(options->bkgRO);
-    options->bkgRO = NULL;
+    if (options->bkgRO) {
+      options->bkgRO->data_exists = false;
+      options->bkgRO->parent->data_exists = false;
+      options->bkgRO->parent->parent->data_exists = false;
+      psFree(options->bkgRO);
+      options->bkgRO = NULL;
+    }
     
     for (int i = 0; i < options->num; i++) {
Index: branches/czw_branch/20120906/ppStack/src/ppStackCombineFinal.c
===================================================================
--- branches/czw_branch/20120906/ppStack/src/ppStackCombineFinal.c	(revision 34531)
+++ branches/czw_branch/20120906/ppStack/src/ppStackCombineFinal.c	(revision 34623)
@@ -27,4 +27,5 @@
     return(false);
   }
+#if 0
   if (!ppStackWriteImage("/tmp/test_forced.bkgmdl.fits",
 			 bkgRO->parent->parent->parent->hdu->header,
@@ -33,5 +34,5 @@
     fprintf(stderr,"Failed to write image because fail.\n");
   }
-  
+#endif
   for (int i = 0; i < options->num; i++) {
     pmFPAfile *file = pmFPAfileSelectSingle(config->files, "PPSTACK.INPUT.BKGMODEL", i);
@@ -53,4 +54,5 @@
   bkgRO->parent->data_exists = true;
   bkgRO->parent->parent->data_exists = true;
+  
   return(true);
 }
Index: branches/czw_branch/20120906/ppStack/src/ppStackCombinePrepare.c
===================================================================
--- branches/czw_branch/20120906/ppStack/src/ppStackCombinePrepare.c	(revision 34531)
+++ branches/czw_branch/20120906/ppStack/src/ppStackCombinePrepare.c	(revision 34623)
@@ -60,4 +60,5 @@
       options->bkgRO->parent->parent->parent->concepts = psMetadataCopy(options->bkgRO->parent->parent->parent->concepts,
 									ro->parent->parent->parent->concepts);
+
     }
 
@@ -84,4 +85,7 @@
         return false;
       }
+      
+
+      
     }
 
Index: branches/czw_branch/20120906/ppStack/src/ppStackFiles.c
===================================================================
--- branches/czw_branch/20120906/ppStack/src/ppStackFiles.c	(revision 34531)
+++ branches/czw_branch/20120906/ppStack/src/ppStackFiles.c	(revision 34623)
@@ -27,5 +27,4 @@
 static char *filesUnconv[] = { "PPSTACK.UNCONV", "PPSTACK.UNCONV.MASK", "PPSTACK.UNCONV.VARIANCE",
                                "PPSTACK.UNCONV.EXP", "PPSTACK.UNCONV.EXPNUM", "PPSTACK.UNCONV.EXPWT",
-			       "PPSTACK.OUTPUT.BKGMODEL",
                                NULL };
 
Index: branches/czw_branch/20120906/ppStack/src/ppStackLoop.c
===================================================================
--- branches/czw_branch/20120906/ppStack/src/ppStackLoop.c	(revision 34531)
+++ branches/czw_branch/20120906/ppStack/src/ppStackLoop.c	(revision 34623)
@@ -193,5 +193,5 @@
 
         // Prepare for combination
-        if (!ppStackCombinePrepare("PPSTACK.UNCONV", "PPSTACK.UNCONV.EXP", "PPSTACK.OUTPUT.BKGMODEL", PPSTACK_FILES_UNCONV,
+        if (!ppStackCombinePrepare("PPSTACK.UNCONV", "PPSTACK.UNCONV.EXP", NULL, PPSTACK_FILES_UNCONV,
                                    stack, options, config)) {
             psError(psErrorCodeLast(), false, "Unable to prepare for combination.");
Index: branches/czw_branch/20120906/ppStack/src/ppStackThread.c
===================================================================
--- branches/czw_branch/20120906/ppStack/src/ppStackThread.c	(revision 34531)
+++ branches/czw_branch/20120906/ppStack/src/ppStackThread.c	(revision 34623)
@@ -35,7 +35,4 @@
             psFitsClose(stack->varianceFits->data[i]);
         }
-/*         if (stack->bkgFits->data[i]) { */
-/*             psFitsClose(stack->bkgFits->data[i]); */
-/*         } */
         stack->imageFits->data[i] = stack->maskFits->data[i] = stack->varianceFits->data[i] = NULL;
     }
@@ -57,5 +54,5 @@
     const psArray *varianceNames = conv ? options->convVariances : options->origVariances; // Variance names
     const psArray *covariances = conv ? options->convCovars : options->origCovars; // Covariance matrices
-    const psArray *bkgNames = options->bkgImages;
+
     PS_ASSERT_ARRAY_NON_NULL(cells, NULL);
     if (imageNames) {
@@ -100,9 +97,7 @@
             psFree(resolved); \
         }
-	fprintf(stderr,"%d %s\n",i,(char*) bkgNames->data[i]);
         IMAGE_OPEN(imageNames, stack->imageFits, i);
         IMAGE_OPEN(maskNames, stack->maskFits, i);
         IMAGE_OPEN(varianceNames, stack->varianceFits, i);
-	//	IMAGE_OPEN(bkgNames, stack->bkgFits, i);
     }
 
Index: branches/czw_branch/20120906/ppStack/src/ppStackUpdateHeader.c
===================================================================
--- branches/czw_branch/20120906/ppStack/src/ppStackUpdateHeader.c	(revision 34531)
+++ branches/czw_branch/20120906/ppStack/src/ppStackUpdateHeader.c	(revision 34623)
@@ -6,4 +6,5 @@
 
     pmReadout *outRO = options->outRO;                                      // Output readout
+    pmReadout *expRO = options->expRO;
 
     // Propagate WCS
@@ -123,5 +124,22 @@
 	snprintf (field, 64, "AIR_%04d", i);
 	psMetadataAddF32(hdu->header, PS_LIST_TAIL, field, PS_META_REPLACE, "input image airmass", value);
-    }	
+    }
+
+    // Copy information into expRO, because it should be there too.
+    pmHDU *expROhdu = pmHDUFromCell(expRO->parent);
+    if (!expROhdu->header) {
+      expROhdu->header = psMetadataAlloc();
+    }
+    expRO->parent->parent->parent->hdu->header = psMetadataCopy(expRO->parent->parent->parent->hdu->header,
+								outRO->parent->parent->parent->hdu->header);
+    
+    expRO->parent->concepts = psMetadataCopy(expRO->parent->concepts,
+					     outRO->parent->concepts);
+    expRO->parent->parent->concepts = psMetadataCopy(expRO->parent->parent->concepts,
+						     outRO->parent->concepts);
+    expRO->parent->parent->parent->concepts = psMetadataCopy(expRO->parent->parent->parent->concepts,
+							     outRO->parent->parent->parent->concepts);
+    
+    
     return true;
 }
