Index: trunk/Ohana/src/dvomerge/src/IDmapIO.c
===================================================================
--- trunk/Ohana/src/dvomerge/src/IDmapIO.c	(revision 39314)
+++ trunk/Ohana/src/dvomerge/src/IDmapIO.c	(revision 39319)
@@ -135,4 +135,10 @@
   create_IDmap_lookup (IDmap);
 
+  gfits_free_header(&header);
+  gfits_free_matrix(&matrix);
+
+  gfits_free_header(&theader);
+  gfits_free_table (&ftable);
+
   return IDmap;
 }
Index: trunk/Ohana/src/dvomerge/src/dvomergeUpdate_catalogs.c
===================================================================
--- trunk/Ohana/src/dvomerge/src/dvomergeUpdate_catalogs.c	(revision 39314)
+++ trunk/Ohana/src/dvomerge/src/dvomergeUpdate_catalogs.c	(revision 39319)
@@ -277,4 +277,14 @@
     dvomergeUpdate_parallel_group (&groups[i], absinput, absoutput);
   }
+
+  for (i = 0; i < Ngroups; i++) {
+    free (groups[i].hosts);
+  }
+  free (groups);
+
+  FreeHostTable(table);
+
+  free (absinput);
+  free (absoutput);
   return TRUE;
 }
@@ -335,4 +345,5 @@
       group->hosts[i][0].pid = pid; // save for future reference
     }
+    free (command);
   }
 
Index: trunk/Ohana/src/dvomerge/src/dvomerge_client.c
===================================================================
--- trunk/Ohana/src/dvomerge/src/dvomerge_client.c	(revision 39314)
+++ trunk/Ohana/src/dvomerge/src/dvomerge_client.c	(revision 39319)
@@ -93,4 +93,20 @@
   dvomergeUpdate_catalogs (input, output, inlist, outsky, NsecfiltInput, NsecfiltOutput, IDmap, secfiltMap);
 
+  SkyTableFree (insky);
+  SkyTableFree (outsky);
+  SkyListFree (inlist);
+
+  if (IDmap) {
+    dvo_image_map_free (IDmap);
+    free (IDmap);
+  }
+  free (absoutput);
+  free (secfiltMap);
+  FreePhotcodeData (inputPhotcodes);
+  FreePhotcodeData (outputPhotcodes);
+
+  SetPhotcodeTable(NULL);
+  FreePhotcodeTable();
+
   dvomerge_client_args_free ();
   ohana_memcheck (TRUE);
