Index: _source/plugins/styles/plugin.js =================================================================== --- _source/plugins/styles/plugin.js (revision 3968) +++ _source/plugins/styles/plugin.js Mon Jul 27 21:36:30 CST 2009 @@ -315,7 +315,8 @@ // Probably the document end is reached, we need a marker node. if ( !lastNode ) { - lastNode = document.createText( '' ); + var marker; + lastNode = marker = document.createText( '' ); lastNode.insertAfter( range.endContainer ); } // The detection algorithm below skips the contents inside bookmark nodes, so @@ -336,7 +337,7 @@ // simpler. if ( !lastNode ) { - lastNode = document.createText( '' ); + lastNode = marker = document.createText( '' ); lastNode.insertAfter( firstNode ); } } @@ -497,8 +498,8 @@ } } -// this._FixBookmarkStart( startNode ); - + // Remove the temporary marking node.(#4111) + marker && marker.remove(); range.moveToBookmark( bookmark ); } Index: CHANGES.html =================================================================== --- CHANGES.html (revision 3970) +++ CHANGES.html Mon Jul 27 21:38:24 CST 2009 @@ -185,6 +185,7 @@