Index: trunk/psLib/src/fits/psFitsImage.c
===================================================================
--- trunk/psLib/src/fits/psFitsImage.c	(revision 24863)
+++ trunk/psLib/src/fits/psFitsImage.c	(revision 25002)
@@ -616,4 +616,6 @@
     }
 
+    bool createPHU = false;             // Are we creating a PHU?
+
     // Create the image HDU
     int hdus = psFitsGetSize(fits);     // Number of HDUs in file
@@ -621,4 +623,5 @@
         // We're creating the first image
         fits_create_img(fits->fd, bitPix, naxis, naxes, &status);
+        createPHU = true;
     } else {
         if (!after) {
@@ -627,4 +630,5 @@
                 // Set status to signal fits_insert_img to insert a new primary HDU
                 status = PREPEND_PRIMARY;
+                createPHU = true;
             } else {
                 // Move back one to perform an insert after the previous HDU
@@ -641,5 +645,5 @@
 
     // write the header, if any.
-    if (header && !psFitsWriteHeader(fits, header)) {
+    if (header && !psFitsWriteHeaderImage(fits, header, createPHU)) {
         psError(PS_ERR_IO, false, "Unable to write FITS header.\n");
         success = false;
