Index: /branches/eam_branches/ipp-20150405/Ohana/src/libdvo/src/dvo_catalog_split.c
===================================================================
--- /branches/eam_branches/ipp-20150405/Ohana/src/libdvo/src/dvo_catalog_split.c	(revision 38097)
+++ /branches/eam_branches/ipp-20150405/Ohana/src/libdvo/src/dvo_catalog_split.c	(revision 38098)
@@ -992,17 +992,19 @@
     assert (catalog[0].Nlensing_disk >= catalog[0].Nlensing_off);
 
-    // convert to external table format (note that the block above does not damage or free catalog.average) 
-    if (!LensingToFtable (&ftable, &catalog[0].lensing[first], Nrows, catalog[0].catformat)) {
-      fprintf (stderr, "trouble converting format\n");
-      goto failure;
-    }
-
-    // write out Lensing table
-    if (!dvo_catalog_save_subcat (catalog[0].lensing_catalog, &ftable, start, Nrows, catalog[0].Nlensing_disk, Nlensing_disk_new)) {
-      fprintf (stderr, "trouble writing Lensing table\n");
-      goto failure;
-    }
-    gfits_free_header (&header);
-    gfits_free_table (&ftable);
+    if (catalog[0].Nlensing) {
+      // convert to external table format (note that the block above does not damage or free catalog.average) 
+      if (!LensingToFtable (&ftable, &catalog[0].lensing[first], Nrows, catalog[0].catformat)) {
+	fprintf (stderr, "trouble converting format\n");
+	goto failure;
+      }
+
+      // write out Lensing table
+      if (!dvo_catalog_save_subcat (catalog[0].lensing_catalog, &ftable, start, Nrows, catalog[0].Nlensing_disk, Nlensing_disk_new)) {
+	fprintf (stderr, "trouble writing Lensing table\n");
+	goto failure;
+      }
+      gfits_free_header (&header);
+      gfits_free_table (&ftable);
+    }
   }
 
@@ -1019,17 +1021,19 @@
     assert (catalog[0].Nlensobj_disk >= catalog[0].Nlensobj_off);
 
-    // convert to external table format (note that the block above does not damage or free catalog.average) 
-    if (!LensobjToFtable (&ftable, &catalog[0].lensobj[first], Nrows, catalog[0].catformat)) {
-      fprintf (stderr, "trouble converting format\n");
-      goto failure;
-    }
-
-    // write out Lensobj table
-    if (!dvo_catalog_save_subcat (catalog[0].lensobj_catalog, &ftable, start, Nrows, catalog[0].Nlensobj_disk, Nlensobj_disk_new)) {
-      fprintf (stderr, "trouble writing Lensobj table\n");
-      goto failure;
-    }
-    gfits_free_header (&header);
-    gfits_free_table (&ftable);
+    if (catalog[0].Nlensobj) {
+      // convert to external table format (note that the block above does not damage or free catalog.average) 
+      if (!LensobjToFtable (&ftable, &catalog[0].lensobj[first], Nrows, catalog[0].catformat)) {
+	fprintf (stderr, "trouble converting format\n");
+	goto failure;
+      }
+
+      // write out Lensobj table
+      if (!dvo_catalog_save_subcat (catalog[0].lensobj_catalog, &ftable, start, Nrows, catalog[0].Nlensobj_disk, Nlensobj_disk_new)) {
+	fprintf (stderr, "trouble writing Lensobj table\n");
+	goto failure;
+      }
+      gfits_free_header (&header);
+      gfits_free_table (&ftable);
+    }
   }
 
@@ -1046,17 +1050,19 @@
     assert (catalog[0].Nstarpar_disk >= catalog[0].Nstarpar_off);
 
-    // convert to external table format (note that the block above does not damage or free catalog.average) 
-    if (!StarParToFtable (&ftable, &catalog[0].starpar[first], Nrows, catalog[0].catformat)) {
-      fprintf (stderr, "trouble converting format\n");
-      goto failure;
-    }
-
-    // write out StarPar table
-    if (!dvo_catalog_save_subcat (catalog[0].starpar_catalog, &ftable, start, Nrows, catalog[0].Nstarpar_disk, Nstarpar_disk_new)) {
-      fprintf (stderr, "trouble writing StarPar table\n");
-      goto failure;
-    }
-    gfits_free_header (&header);
-    gfits_free_table (&ftable);
+    if (catalog[0].Nstarpar) {
+      // convert to external table format (note that the block above does not damage or free catalog.average) 
+      if (!StarParToFtable (&ftable, &catalog[0].starpar[first], Nrows, catalog[0].catformat)) {
+	fprintf (stderr, "trouble converting format\n");
+	goto failure;
+      }
+
+      // write out StarPar table
+      if (!dvo_catalog_save_subcat (catalog[0].starpar_catalog, &ftable, start, Nrows, catalog[0].Nstarpar_disk, Nstarpar_disk_new)) {
+	fprintf (stderr, "trouble writing StarPar table\n");
+	goto failure;
+      }
+      gfits_free_header (&header);
+      gfits_free_table (&ftable);
+    }
   }
 
Index: /branches/eam_branches/ipp-20150405/Ohana/src/libdvo/src/dvo_convert.c
===================================================================
--- /branches/eam_branches/ipp-20150405/Ohana/src/libdvo/src/dvo_convert.c	(revision 38097)
+++ /branches/eam_branches/ipp-20150405/Ohana/src/libdvo/src/dvo_convert.c	(revision 38098)
@@ -497,5 +497,7 @@
   SKIPPING_FORMAT ("DVO_LENSING_PS1_V4",          PS1_V4,          PS1_V4);
   CONVERT_FORMAT  ("DVO_LENSING_PS1_V5",          PS1_V5,          PS1_V5_R2);
+  SKIPPING_FORMAT ("DVO_LENSING_PS1_SIM",         PS1_SIM,         PS1_SIM);
 # undef CONVERT_FORMAT
+# undef SKIPPING_FORMAT
 
   fprintf (stderr, "table format unknown: %s\n", extname);
@@ -556,4 +558,11 @@
   }
 
+# define SKIPPING_FORMAT(NAME, FORMAT, TYPE)		\
+  if (!strcmp (extname, NAME)) {					\
+    fprintf (stderr, "ERROR: format %s not defined for lensobj, skipping\n", NAME); \
+    *Nlensobj = 0; \
+    return NULL; \
+  }
+
 # define CONVERT_FORMAT(NAME, FORMAT, TYPE)		\
   if (!strcmp (extname, NAME)) {					\
@@ -579,17 +588,19 @@
   }
 
-// CONVERT_FORMAT ("DVO_LENSOBJ_PS1_REF",         PS1_REF,         PS1_REF);
-// CONVERT_FORMAT ("DVO_LENSOBJ_ELIXIR", 	  ELIXIR,  	   Elixir);
-// CONVERT_FORMAT ("DVO_LENSOBJ_LONEOS", 	  LONEOS,          Loneos);
-// CONVERT_FORMAT ("DVO_LENSOBJ_PANSTARRS_DEV_0", PANSTARRS_DEV_0, Panstarrs_DEV_0);
-// CONVERT_FORMAT ("DVO_LENSOBJ_PANSTARRS_DEV_1", PANSTARRS_DEV_1, Panstarrs_DEV_1);
-// CONVERT_FORMAT ("DVO_LENSOBJ_PS1_DEV_1",       PS1_DEV_1,       PS1_DEV_1);
-// CONVERT_FORMAT ("DVO_LENSOBJ_PS1_DEV_2",       PS1_DEV_2,       PS1_DEV_2);
-// CONVERT_FORMAT ("DVO_LENSOBJ_PS1_V1",          PS1_V1,          PS1_V1);
-// CONVERT_FORMAT ("DVO_LENSOBJ_PS1_V2",          PS1_V2,          PS1_V2);
-// CONVERT_FORMAT ("DVO_LENSOBJ_PS1_V3",          PS1_V3,          PS1_V3);
-// CONVERT_FORMAT ("DVO_LENSOBJ_PS1_V4",          PS1_V4,          PS1_V4);
-  CONVERT_FORMAT ("DVO_LENSOBJ_PS1_V5",          PS1_V5,          PS1_V5);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PS1_REF",         PS1_REF,         PS1_REF);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_ELIXIR", 	  ELIXIR,  	   Elixir);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_LONEOS", 	  LONEOS,          Loneos);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PANSTARRS_DEV_0", PANSTARRS_DEV_0, Panstarrs_DEV_0);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PANSTARRS_DEV_1", PANSTARRS_DEV_1, Panstarrs_DEV_1);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PS1_DEV_1",       PS1_DEV_1,       PS1_DEV_1);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PS1_DEV_2",       PS1_DEV_2,       PS1_DEV_2);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PS1_V1",          PS1_V1,          PS1_V1);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PS1_V2",          PS1_V2,          PS1_V2);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PS1_V3",          PS1_V3,          PS1_V3);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PS1_V4",          PS1_V4,          PS1_V4);
+  CONVERT_FORMAT  ("DVO_LENSOBJ_PS1_V5",          PS1_V5,          PS1_V5);
+  SKIPPING_FORMAT ("DVO_LENSOBJ_PS1_SIM",         PS1_SIM,         PS1_SIM);
 # undef CONVERT_FORMAT
+# undef SKIPPING_FORMAT
 
   fprintf (stderr, "table format unknown: %s\n", extname);
@@ -650,4 +661,11 @@
   }
 
+# define SKIPPING_FORMAT(NAME, FORMAT, TYPE)		\
+  if (!strcmp (extname, NAME)) {					\
+    fprintf (stderr, "ERROR: format %s not defined for starpar, skipping\n", NAME); \
+    *Nstarpar = 0; \
+    return NULL; \
+  }
+
 # define CONVERT_FORMAT(NAME, FORMAT, TYPE)		\
   if (!strcmp (extname, NAME)) {					\
@@ -673,20 +691,19 @@
   }
 
-   CONVERT_FORMAT ("DVO_STARPAR_PS1_SIM",         PS1_SIM,         PS1_SIM);
-// CONVERT_FORMAT ("DVO_STARPAR_PS1_REF",         PS1_REF,         PS1_REF);
-// CONVERT_FORMAT ("DVO_STARPAR_ELIXIR", 	  ELIXIR,  	   Elixir);
-// CONVERT_FORMAT ("DVO_STARPAR_LONEOS", 	  LONEOS,          Loneos);
-// CONVERT_FORMAT ("DVO_STARPAR_PANSTARRS_DEV_0", PANSTARRS_DEV_0, Panstarrs_DEV_0);
-// CONVERT_FORMAT ("DVO_STARPAR_PANSTARRS_DEV_1", PANSTARRS_DEV_1, Panstarrs_DEV_1);
-// CONVERT_FORMAT ("DVO_STARPAR_PS1_DEV_1",       PS1_DEV_1,       PS1_DEV_1);
-// CONVERT_FORMAT ("DVO_STARPAR_PS1_DEV_2",       PS1_DEV_2,       PS1_DEV_2);
-// CONVERT_FORMAT ("DVO_STARPAR_PS1_V1",          PS1_V1,          PS1_V1);
-// CONVERT_FORMAT ("DVO_STARPAR_PS1_V2",          PS1_V2,          PS1_V2);
-// CONVERT_FORMAT ("DVO_STARPAR_PS1_V3",          PS1_V3,          PS1_V3);
-// CONVERT_FORMAT ("DVO_STARPAR_PS1_V4",          PS1_V4,          PS1_V4);
-  CONVERT_FORMAT ("DVO_STARPAR_PS1_V5",          PS1_V5,          PS1_V5);
-//  CONVERT_FORMAT ("DVO_STELLAR_PARAMS_PS1_V5",          PS1_V5,          PS1_V5);
-  // XXX fix in libauto: STELLAR_PARAMS to STARPAR
+  CONVERT_FORMAT  ("DVO_STARPAR_PS1_SIM",         PS1_SIM,         PS1_SIM);
+  SKIPPING_FORMAT ("DVO_STARPAR_PS1_REF",         PS1_REF,         PS1_REF);
+  SKIPPING_FORMAT ("DVO_STARPAR_ELIXIR", 	  ELIXIR,  	   Elixir);
+  SKIPPING_FORMAT ("DVO_STARPAR_LONEOS", 	  LONEOS,          Loneos);
+  SKIPPING_FORMAT ("DVO_STARPAR_PANSTARRS_DEV_0", PANSTARRS_DEV_0, Panstarrs_DEV_0);
+  SKIPPING_FORMAT ("DVO_STARPAR_PANSTARRS_DEV_1", PANSTARRS_DEV_1, Panstarrs_DEV_1);
+  SKIPPING_FORMAT ("DVO_STARPAR_PS1_DEV_1",       PS1_DEV_1,       PS1_DEV_1);
+  SKIPPING_FORMAT ("DVO_STARPAR_PS1_DEV_2",       PS1_DEV_2,       PS1_DEV_2);
+  SKIPPING_FORMAT ("DVO_STARPAR_PS1_V1",          PS1_V1,          PS1_V1);
+  SKIPPING_FORMAT ("DVO_STARPAR_PS1_V2",          PS1_V2,          PS1_V2);
+  SKIPPING_FORMAT ("DVO_STARPAR_PS1_V3",          PS1_V3,          PS1_V3);
+  SKIPPING_FORMAT ("DVO_STARPAR_PS1_V4",          PS1_V4,          PS1_V4);
+  CONVERT_FORMAT  ("DVO_STARPAR_PS1_V5",          PS1_V5,          PS1_V5);
 # undef CONVERT_FORMAT
+# undef SKIPPING_FORMAT
 
   fprintf (stderr, "table format unknown: %s\n", extname);
