Index: /branches/rel10_ifa/psLib/src/fits/psFitsImage.c
===================================================================
--- /branches/rel10_ifa/psLib/src/fits/psFitsImage.c	(revision 6512)
+++ /branches/rel10_ifa/psLib/src/fits/psFitsImage.c	(revision 6513)
@@ -7,6 +7,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.1.10.1 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-03-04 01:23:17 $
+ *  @version $Revision: 1.1.10.2 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2006-03-04 01:54:42 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -365,20 +365,26 @@
     }
 
+    // Update the header
+    if (header) {
+        // Update header with BITPIX, NAXIS[12], BSCALE, BZERO so we don't clobber the basic header
+        psMetadataAddS32(header, PS_LIST_TAIL, "BITPIX", PS_META_REPLACE, "Bits per pixel", bitPix);
+        psMetadataAddS32(header, PS_LIST_TAIL, "NAXIS1", PS_META_REPLACE, "Bits per pixel", numCols);
+        psMetadataAddS32(header, PS_LIST_TAIL, "NAXIS2", PS_META_REPLACE, "Bits per pixel", numRows);
+        psMetadataAddF64(header, PS_LIST_TAIL, "BSCALE", PS_META_REPLACE, "Pixel value scale", 1.0);
+        psMetadataAddF64(header, PS_LIST_TAIL, "BZERO",  PS_META_REPLACE, "Pixel value offset", bZero);
+    }
+
     fits_create_img(fits->fd, bitPix, naxis, naxes, &status);
 
-    if (bZero != 0) {        // set the bscale/bzero
+    // Write the header
+    if (header) {
+        psFitsWriteHeader(header, (psPtr)fits);
+    } else {
         fits_write_key_dbl(fits->fd, "BZERO", bZero, 12, "Pixel Value Offset", &status);
         fits_write_key_dbl(fits->fd, "BSCALE", 1.0, 12, "Pixel Value Scale", &status);
+    }
+
+    if (bZero != 0) {
         fits_set_bscale(fits->fd, 1.0, bZero, &status);
-    }
-
-    // write the header, if any.
-    if (header != NULL) {
-        // Update with BITPIX, NAXIS[12]
-        psMetadataAddS32(header, PS_LIST_HEAD, "BITPIX", PS_META_REPLACE, "Bits per pixel", bitPix);
-        psMetadataAddS32(header, PS_LIST_HEAD, "NAXIS1", PS_META_REPLACE, "Bits per pixel", numCols);
-        psMetadataAddS32(header, PS_LIST_HEAD, "NAXIS2", PS_META_REPLACE, "Bits per pixel", numRows);
-
-        psFitsWriteHeader(header, (psPtr)fits);
     }
 
