Index: /branches/eam_branches/ipp-20140904/Ohana/src/delstar/src/delete_duplicate_measures.c
===================================================================
--- /branches/eam_branches/ipp-20140904/Ohana/src/delstar/src/delete_duplicate_measures.c	(revision 37746)
+++ /branches/eam_branches/ipp-20140904/Ohana/src/delstar/src/delete_duplicate_measures.c	(revision 37747)
@@ -61,9 +61,13 @@
     }
 
-    delete_duplicate_measures_catalog (&catalog);
-
-    if (UPDATE) {
-      // XXX skip if nothing was deleted
-      dvo_catalog_save_complete (&catalog, VERBOSE2);
+    if (delete_duplicate_measures_catalog (&catalog)) {
+      // skip if nothing was deleted
+      if (UPDATE) {
+	if (!dvo_catalog_backup (&catalog, TRUE)) {
+	  fprintf (stderr, "ERROR: failed to make backup for catalog %s\n", catalog.filename);
+	  exit (1);
+	}
+	dvo_catalog_save_complete (&catalog, VERBOSE2);
+      }
     }
 
@@ -234,5 +238,5 @@
     measureDrop[j] = TRUE;
     off_t N = measure[j].averef;
-    fprintf (stderr, "0x%08x 0x%08x %8.4f %8.4f %5d\n", measure[j].imageID, measure[j].detID, average[N].R, average[N].D, measure[j].photcode);
+    if (VERBOSE) fprintf (stderr, "0x%08x 0x%08x %8.4f %8.4f %5d\n", measure[j].imageID, measure[j].detID, average[N].R, average[N].D, measure[j].photcode);
   }
 
@@ -385,4 +389,5 @@
   off_t NdelAves = Naverage - catalog[0].Naverage;
   off_t NdelMeas = Nmeasure - catalog[0].Nmeasure;
+
   if (NdelAves || NdelMeas) {
     fprintf (stderr, "deleting "OFF_T_FMT" measures and "OFF_T_FMT" averages : %s\n",  NdelMeas, NdelAves, catalog[0].filename);
@@ -404,5 +409,6 @@
   FREE (measureAveOut);
 
-  return TRUE;
+  if (NdelAves || NdelMeas) return TRUE;
+  return FALSE;
 }
 
