Index: /CKEditor/trunk/_source/plugins/selection/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/selection/plugin.js	(revision 6593)
+++ /CKEditor/trunk/_source/plugins/selection/plugin.js	(revision 6594)
@@ -665,4 +665,5 @@
 						var siblings = parent.children,
 							child,
+							sibling,
 							testRange = range.duplicate(),
 							startIndex = 0,
@@ -742,8 +743,9 @@
 							while ( distance > 0 )
 							{
-								child = child[ position > 0 ? 'previousSibling' : 'nextSibling' ];
 								try
 								{
-									distance -= child.nodeValue.length;
+									sibling = child[ position > 0 ? 'previousSibling' : 'nextSibling' ];
+									distance -= sibling.nodeValue.length;
+									child = sibling;
 								}
 								// Measurement in IE could be somtimes wrong because of <select> element. (#4611)
