Index: trunk/Ohana/src/libdvo/src/LoadPhotcodes.c
===================================================================
--- trunk/Ohana/src/libdvo/src/LoadPhotcodes.c	(revision 28241)
+++ trunk/Ohana/src/libdvo/src/LoadPhotcodes.c	(revision 28246)
@@ -15,5 +15,5 @@
   if (LoadPhotcodesText (master_file)) { 
     if (!check_file_access (catdir_file, TRUE, TRUE, TRUE)) return TRUE;
-    SavePhotcodesFITS (catdir_file);
+    if (!SavePhotcodesFITS (catdir_file)) return FALSE;
     return TRUE;
   }
Index: trunk/Ohana/src/libdvo/src/SavePhotcodesFITS.c
===================================================================
--- trunk/Ohana/src/libdvo/src/SavePhotcodesFITS.c	(revision 28241)
+++ trunk/Ohana/src/libdvo/src/SavePhotcodesFITS.c	(revision 28246)
@@ -32,8 +32,8 @@
 
   /* convert FITS format data to internal format (byteswaps & EXTNAME) */
-  gfits_db_create (&db);
-  gfits_table_set_PhotCode_PS1_V2 (&db.ftable, photcode_output, table[0].Ncode);
-  gfits_db_save (&db);
-  gfits_db_close (&db);
+  if (!gfits_db_create (&db)) return (FALSE);
+  if (!gfits_table_set_PhotCode_PS1_V2 (&db.ftable, photcode_output, table[0].Ncode)) return (FALSE);
+  if (!gfits_db_save (&db)) return (FALSE);
+  if (!gfits_db_close (&db)) return (FALSE);
 
   free (photcode_output);
Index: trunk/Ohana/src/libdvo/src/dvo_image.c
===================================================================
--- trunk/Ohana/src/libdvo/src/dvo_image.c	(revision 28241)
+++ trunk/Ohana/src/libdvo/src/dvo_image.c	(revision 28246)
@@ -120,14 +120,17 @@
   /* adjust header */
   Nimages = 0;
-  gfits_scan (&db[0].header, "NIMAGES", OFF_T_FMT, 1,  &Nimages);
+  if (!gfits_scan (&db[0].header, "NIMAGES", OFF_T_FMT, 1,  &Nimages)) return (FALSE);
   Nimages += Nnew;
-  gfits_modify (&db[0].header, "NIMAGES", OFF_T_FMT, 1,  Nimages);
-
-  gfits_table_to_vtable (&db[0].ftable, &db[0].vtable, 0, 0);
-  gfits_vadd_rows (&db[0].vtable, (char *) new, Nnew, sizeof(Image));
+
+  if (!gfits_modify (&db[0].header, "NIMAGES", OFF_T_FMT, 1,  Nimages)) return (FALSE);
+
+  if (!gfits_table_to_vtable (&db[0].ftable, &db[0].vtable, 0, 0)) return (FALSE);
+
+  if (!gfits_vadd_rows (&db[0].vtable, (char *) new, Nnew, sizeof(Image))) return (FALSE);
 
   /* check that primary header and table header agree */
   if (Nimages != db[0].theader.Naxis[1]) {
     fprintf (stderr, "header / table length mismatch!\n");
+    return (FALSE);
   }
   return (TRUE);
@@ -157,5 +160,5 @@
       exit (2);
   }
-  return (TRUE);
+  return (status);
 }
 
Index: trunk/Ohana/src/libdvo/src/fits_db.c
===================================================================
--- trunk/Ohana/src/libdvo/src/fits_db.c	(revision 28241)
+++ trunk/Ohana/src/libdvo/src/fits_db.c	(revision 28246)
@@ -20,9 +20,9 @@
 /* create an empty db */
 int gfits_db_create (FITS_DB *db) {
-  gfits_init_header (&db[0].header);    
+  if (!gfits_init_header (&db[0].header)) return (FALSE);
   db[0].header.extend = TRUE;
-  gfits_create_header (&db[0].header);
-  gfits_create_matrix (&db[0].header, &db[0].matrix);
-  gfits_print (&db[0].header, "NEXTEND", "%d", 1, 1);
+  if (!gfits_create_header (&db[0].header))  return (FALSE);
+  if (!gfits_create_matrix (&db[0].header, &db[0].matrix)) return (FALSE);
+  if (!gfits_print (&db[0].header, "NEXTEND", "%d", 1, 1)) return (FALSE);
   db[0].ftable.header = &db[0].theader;
   return (TRUE);
