Index: trunk/Ohana/src/imregister/imphot/rtext.c
===================================================================
--- trunk/Ohana/src/imregister/imphot/rtext.c	(revision 15487)
+++ trunk/Ohana/src/imregister/imphot/rtext.c	(revision 27435)
@@ -4,5 +4,5 @@
 int rtext (FITS_DB *db) {
 
-  int Nimage, size, nimage;
+  off_t Nimage, size, nimage;
   struct stat filestatus;
   Image *image;
@@ -10,16 +10,16 @@
   /* check that file size makes sense */
   Nimage = 0;
-  gfits_scan (&db[0].header, "NIMAGES", "%d", 1, &Nimage);
+  gfits_scan (&db[0].header, "NIMAGES", "%lld", 1, (long long *) &Nimage);
   if (stat (db[0].filename, &filestatus) == -1) {
     if (VERBOSE) fprintf (stderr, "ERROR: failed to get status of image catalog\n");
     exit (1);
   }
-  size = Nimage*sizeof(Image) + db[0].header.size;
+  size = Nimage*sizeof(Image) + db[0].header.datasize;
   if (size != filestatus.st_size) {
     int Ndata;
 
-    Ndata = (filestatus.st_size - db[0].header.size) / sizeof (Image);
+    Ndata = (filestatus.st_size - db[0].header.datasize) / sizeof (Image);
     if (VERBOSE) fprintf (stderr, "ERROR: image catalog has inconsistent size\n");
-    if (VERBOSE) fprintf (stderr, "header: %d, data: %d\n", Nimage, Ndata);
+    if (VERBOSE) fprintf (stderr, "header: %lld, data: %d\n", (long long) Nimage, Ndata);
     if (!FORCE_READ) exit (1);
     Nimage = Ndata;
@@ -41,7 +41,7 @@
   } 
   db[0].ftable.buffer = (char *) image;
-  gfits_modify (&db[0].theader, "NAXIS2", "%d", 1, Nimage);
+  gfits_modify (&db[0].theader, "NAXIS2", "%lld", 1, (long long) Nimage);
   db[0].theader.Naxis[1] = Nimage;
-  db[0].ftable.size = gfits_data_size (&db[0].theader);
+  db[0].ftable.datasize = gfits_data_size (&db[0].theader);
   
   return (TRUE);
