Index: trunk/Mars/mimage/MImgCleanTime.cc
===================================================================
--- trunk/Mars/mimage/MImgCleanTime.cc	(revision 17833)
+++ trunk/Mars/mimage/MImgCleanTime.cc	(revision 17850)
@@ -176,13 +176,18 @@
             continue;
 
+        const Island &I1 = fIslands[idx1];
+        const Island &I2 = fIslands[idx2];
+
         // FIXME: Put a limit on count? Put a limit on size?
-        if ((fIslands[idx1].min<fIslands[idx2].min || fIslands[idx1].min>fIslands[idx2].max) &&
-            (fIslands[idx1].max<fIslands[idx2].min || fIslands[idx1].max>fIslands[idx2].max) &&
-            (fIslands[idx2].min<fIslands[idx1].min || fIslands[idx2].min>fIslands[idx1].max) &&
-            (fIslands[idx2].max<fIslands[idx1].min || fIslands[idx2].max>fIslands[idx1].max))
+        // The ideal cut would be to allow that a single
+        // pixel still can connect two clusters
+        if (I1.count==1 || I1.count==1)
+            continue;
+
+        if (I1.max<I2.min || I2.max<I1.min)
             continue;
 
         // Combine both islands
-        fIslands[idx1] += fIslands[idx2];
+        I1 += I2;
 
         // Remove idx2 from the list
