Index: trunk/Ohana/src/dvomerge/src/build_links.c
===================================================================
--- trunk/Ohana/src/dvomerge/src/build_links.c	(revision 40127)
+++ trunk/Ohana/src/dvomerge/src/build_links.c	(revision 40291)
@@ -701,5 +701,5 @@
   off_t *next_galphot;
 
-  if (galphot) return NULL;
+  if (!galphot) return NULL;
   if (SKIP_GALPHOT) return NULL;
 
Index: trunk/Ohana/src/dvomerge/src/merge_catalogs_old.c
===================================================================
--- trunk/Ohana/src/dvomerge/src/merge_catalogs_old.c	(revision 40127)
+++ trunk/Ohana/src/dvomerge/src/merge_catalogs_old.c	(revision 40291)
@@ -367,6 +367,6 @@
       // secfilt tables of input and output are the same
       for (k = 0; k < NsecfiltIn; k++) {
-        if ( isfinite(output[0].secfilt[n*NsecfiltIn+k].M)) continue;
-        if (!isfinite( input[0].secfilt[N*NsecfiltIn+k].M)) continue;
+        if ( isfinite(output[0].secfilt[n*NsecfiltIn+k].MpsfChp)) continue;
+        if (!isfinite( input[0].secfilt[N*NsecfiltIn+k].MpsfChp)) continue;
         output[0].secfilt[n*NsecfiltIn+k] = input[0].secfilt[N*NsecfiltIn+k];
       }
@@ -378,6 +378,6 @@
         int outputIndex = n * NsecfiltOut + secfiltMap[k];
         
-        if ( isfinite(output[0].secfilt[outputIndex].M)) continue;
-        if (!isfinite( input[0].secfilt[N*NsecfiltIn+k].M)) continue;
+        if ( isfinite(output[0].secfilt[outputIndex].MpsfChp)) continue;
+        if (!isfinite( input[0].secfilt[N*NsecfiltIn+k].MpsfChp)) continue;
         output[0].secfilt[outputIndex] = input[0].secfilt[N*NsecfiltIn+k];
       }
@@ -489,5 +489,5 @@
       }
     
-      if (isfinite(input[0].secfilt[N*NsecfiltIn+j].M)) {
+      if (isfinite(input[0].secfilt[N*NsecfiltIn+j].MpsfChp)) {
 	output[0].secfilt[outputIndex] = input[0].secfilt[N*NsecfiltIn+j];
       }
