Index: trunk/psModules/src/objects/pmSourceIO.c
===================================================================
--- trunk/psModules/src/objects/pmSourceIO.c	(revision 18601)
+++ trunk/psModules/src/objects/pmSourceIO.c	(revision 19087)
@@ -3,6 +3,6 @@
  *  @author EAM, IfA
  *
- *  @version $Revision: 1.63 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2008-07-17 22:38:15 $
+ *  @version $Revision: 1.64 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2008-08-16 22:36:18 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -424,4 +424,26 @@
                 pmConfigConformHeader(hdu->header, file->format);
 
+		// psFitsWriteBlank strips out the NAXISn keywords, forcing CFITSIO to take care of them
+		// save NAXIS1,NAXIS2 as IMNAXIS1,IMNAXIS2
+		int Nx = psMetadataLookupS32 (&status, hdu->header, "IMNAXIS1");
+		if (!status) {
+		    Nx = psMetadataLookupS32 (&status, hdu->header, "NAXIS1");
+		    if (status) {
+			psMetadataAddS32 (hdu->header, PS_LIST_TAIL, "IMNAXIS1", PS_META_REPLACE, "original image size (x-dir)", Nx);
+		    } else {
+			fprintf (stderr, "header is missing NAXIS1!");
+		    }
+		}
+
+		int Ny = psMetadataLookupS32 (&status, hdu->header, "IMNAXIS2");
+		if (!status) {
+		    Ny = psMetadataLookupS32 (&status, hdu->header, "NAXIS2");
+		    if (status) {
+			psMetadataAddS32 (hdu->header, PS_LIST_TAIL, "IMNAXIS2", PS_META_REPLACE, "original image size (y-dir)", Ny);
+		    } else {
+			fprintf (stderr, "header is missing NAXIS2!");
+		    }
+		}
+
                 psFitsWriteBlank (file->fits, hdu->header, headname);
                 psTrace ("pmFPAfile", 5, "wrote ext head %s (type: %d)\n", file->filename, file->type);
