Index: /CKEditor/branches/versions/3.4.x/CHANGES.html
===================================================================
--- /CKEditor/branches/versions/3.4.x/CHANGES.html	(revision 5669)
+++ /CKEditor/branches/versions/3.4.x/CHANGES.html	(revision 5670)
@@ -46,4 +46,5 @@
 			Fixed issues:</p>
 	<ul>
+		<li><a href="http://dev.fckeditor.net/ticket/5435">#5435</a> : IE: we can't start Numbered/Bulleted list in Tables by Clicking on Insert/Remove Numbers/Bullets Icon.</li>
 		<li><a href="http://dev.fckeditor.net/ticket/5415">#5415</a> : Undo not working when we change the Table Properties for the table on a saved page.</li>
 	</ul>
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/domiterator/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/domiterator/plugin.js	(revision 5669)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/domiterator/plugin.js	(revision 5670)
@@ -52,4 +52,8 @@
 			{
 				range = this.range.clone();
+
+				// Shrink the range to exclude harmful "noises" (#4087, #4450, #5435).
+				range.shrink( CKEDITOR.NODE_ELEMENT, true );
+
 				range.enlarge( this.forceBrBreak || !this.enlargeBr ?
 							   CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS : CKEDITOR.ENLARGE_BLOCK_CONTENTS );
@@ -213,24 +217,6 @@
 				// We have found a block boundary. Let's close the range and move out of the
 				// loop.
-				if ( ( closeRange || isLast ) && range )
-				{
-					var boundaryNodes = range.getBoundaryNodes(),
-						startPath = new CKEDITOR.dom.elementPath( range.startContainer );
-
-					// Drop the range if it only contains bookmark nodes, and is
-					// not because of the original collapsed range. (#4087,#4450)
-					if ( boundaryNodes.startNode.getParent().equals( startPath.blockLimit )
-						 && isBookmark( boundaryNodes.startNode ) && isBookmark( boundaryNodes.endNode ) )
-					{
-						range = null;
-						this._.nextNode = null;
-					}
-					else
+				if ( isLast || ( closeRange && range ) )
 						break;
-				}
-
-				if ( isLast )
-					break;
-
 			}
 
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/list/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/list/plugin.js	(revision 5669)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/list/plugin.js	(revision 5670)
@@ -439,15 +439,4 @@
 			{
 				range = ranges.shift();
-
-				var boundaryNodes = range.getBoundaryNodes(),
-					startNode = boundaryNodes.startNode,
-					endNode = boundaryNodes.endNode;
-
-				if ( startNode.type == CKEDITOR.NODE_ELEMENT && startNode.getName() == 'td' )
-					range.setStartAt( boundaryNodes.startNode, CKEDITOR.POSITION_AFTER_START );
-
-				if ( endNode.type == CKEDITOR.NODE_ELEMENT && endNode.getName() == 'td' )
-					range.setEndAt( boundaryNodes.endNode, CKEDITOR.POSITION_BEFORE_END );
-
 				var iterator = range.createIterator(),
 					block;
