Index: /FCKeditor/trunk/_whatsnew.html
===================================================================
--- /FCKeditor/trunk/_whatsnew.html	(revision 1283)
+++ /FCKeditor/trunk/_whatsnew.html	(revision 1284)
@@ -46,4 +46,6 @@
 		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1643">#1643</a>] Resolved
 			several "strict warning" messages in Firefox when running FCKeditor.</li>
+		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1522">#1522</a>] The ENTER
+			key will now work properly in IE with the cursor at the start of a formatted block.</li>
 	</ul>
 	<p>
Index: /FCKeditor/trunk/editor/_source/classes/fckdomrange_ie.js
===================================================================
--- /FCKeditor/trunk/editor/_source/classes/fckdomrange_ie.js	(revision 1283)
+++ /FCKeditor/trunk/editor/_source/classes/fckdomrange_ie.js	(revision 1284)
@@ -114,5 +114,5 @@
 		bIsStartMakerAlone = ( forceExpand || !eStartMarker.previousSibling || eStartMarker.previousSibling.nodeName.toLowerCase() == 'br' ) && !eStartMarker.nextSibing ;
 		
-		// Append a temporary <span>&nbsp;</span> before the selection.
+		// Append a temporary <span>&#65279;</span> before the selection.
 		// This is needed to avoid IE destroying selections inside empty
 		// inline elements, like <b></b> (#253).
@@ -144,5 +144,5 @@
 		if ( bIsStartMakerAlone )
 		{
-			// Move the selection start to include the temporary &nbsp;.
+			// Move the selection start to include the temporary &#65279;.
 			oIERange.moveStart( 'character', -1 ) ;
 			
Index: /FCKeditor/trunk/editor/_source/classes/fckenterkey.js
===================================================================
--- /FCKeditor/trunk/editor/_source/classes/fckenterkey.js	(revision 1283)
+++ /FCKeditor/trunk/editor/_source/classes/fckenterkey.js	(revision 1284)
@@ -415,5 +415,5 @@
 		// boundaries were on separated blocks, or none of them where on the
 		// block limits (start/end).
-		if ( !oSplitInfo.WasStartOfBlock && !oSplitInfo.WasEndOfBlock )
+		if ( !bIsStartOfBlock && !bIsEndOfBlock )
 		{
 			// If the next block is an <li> with another list tree as the first child
@@ -488,5 +488,5 @@
 			{
 				// Move the selection to the new block.
-				oRange.MoveToNodeContents( eNewBlock ) ;
+				oRange.MoveToElementEditStart( eNewBlock ) ;
 				oRange.Select() ;
 			}
