--- ../vendor/2.6.3/editor/_source/internals/fcktablehandler_gecko.js	2008-08-15 13:46:42.000000000 -0400
+++ ../trunk/editor/_source/internals/fcktablehandler_gecko.js	2009-08-21 13:39:47.000000000 -0400
@@ -37,6 +37,9 @@
 
 		return aCells ;
 	}
+	
+	// Keep the original anchorNode in case no child TD/TH found
+	var anchorNode = oSelection.anchorNode ;
 
 	for ( var i = 0 ; i < oSelection.rangeCount ; i++ )
 	{
@@ -52,5 +55,12 @@
 			aCells[aCells.length] = oCell ;
 	}
 
+	// We didn't find any child TD/TH, so look up for the nearest one.
+	if ( aCells.length == 0 ) {
+		var oParent = FCKTools.GetElementAscensor( anchorNode, 'TD,TH' ) ;
+		if ( oParent )
+			aCells[0] = oParent ;
+	}
+	
 	return aCells ;
 }

