Index: trunk/Ohana/src/opihi/dvo/cmpread.c
===================================================================
--- trunk/Ohana/src/opihi/dvo/cmpread.c	(revision 20936)
+++ trunk/Ohana/src/opihi/dvo/cmpread.c	(revision 27435)
@@ -6,5 +6,6 @@
 int cmpread (int argc, char **argv) {
   
-  int i, field, Naxis, Nbytes, Nstars;
+  off_t i, Nbytes, Nstars;
+  int field, Naxis;
   double tR, tD;
   float value;
@@ -61,8 +62,8 @@
     return (FALSE);
   }
-  fseek (f, header.size, SEEK_SET); 
+  fseeko (f, header.datasize, SEEK_SET); 
 
   /* find expected number of stars */
-  if (!gfits_scan (&header, "NSTARS", "%d", 1, &Nstars)) {
+  if (!gfits_scan (&header, "NSTARS", "%lld", 1, (long long *) &Nstars)) {
     gprint (GP_ERR, "ERROR: can't get NSTARS from header\n");
     gfits_free_header (&header);
@@ -76,5 +77,5 @@
     /* allocate space for stars */
     gprint (GP_ERR, "reading from TEXT cmp file %s\n", argv[2]);
-    if (!gfits_scan (&header, "NSTARS", "%d", 1, &Nstars)) {
+    if (!gfits_scan (&header, "NSTARS", "%lld", 1, (long long *) &Nstars)) {
       gprint (GP_ERR, "ERROR: failed to find NSTARS\n");
       exit (1);
@@ -84,5 +85,5 @@
     gprint (GP_ERR, "reading from FITS cmp file %s\n", argv[2]);
     Nbytes = gfits_data_size (&header);
-    fseek (f, Nbytes, SEEK_CUR); 
+    fseeko (f, Nbytes, SEEK_CUR); 
     stars = cmpReadFits (f, &Nstars);
   }
@@ -138,5 +139,5 @@
   free (stars);
   gfits_free_header (&header);
-  gprint (GP_ERR, "loaded %d objects\n", Nstars);
+  gprint (GP_ERR, "loaded %lld objects\n", (long long) Nstars);
   return (TRUE);
 }
