Index: wp-includes/formatting.php
===================================================================
--- wp-includes/formatting.php	(revision 25012)
+++ wp-includes/formatting.php	(working copy)
@@ -1208,7 +1208,7 @@
 	// WP bug fix for LOVE <3 (and other situations with '<' before a number)
 	$text = preg_replace('#<([0-9]{1})#', '&lt;$1', $text);
 
-	while ( preg_match("/<(\/?[\w:]*)\s*([^>]*)>/", $text, $regex) ) {
+	while ( preg_match("/<(\/?[\w:]+)\s*([^>]*)>/", $text, $regex) ) {
 		$newtext .= $tagqueue;
 
 		$i = strpos($text, $regex[0]);
@@ -1285,7 +1285,7 @@
 				$tag = '';
 			}
 		}
-		$newtext .= substr($text, 0, $i) . $tag;
+		$newtext .= str_replace( '<', '&lt;', substr($text, 0, $i)) . $tag;
 		$text = substr($text, $i + $l);
 	}
 
@@ -1293,7 +1293,7 @@
 	$newtext .= $tagqueue;
 
 	// Add Remaining text
-	$newtext .= $text;
+	$newtext .= str_replace( '<', '&lt;', $text );
 
 	// Empty Stack
 	while( $x = array_pop($tagstack) )
