Index: wp-includes/rewrite.php
===================================================================
--- wp-includes/rewrite.php	(revision 21220)
+++ wp-includes/rewrite.php	(working copy)
@@ -1251,6 +1251,10 @@
 			}
 		}
 
+		//escape regex special characters in permalink structure
+		foreach ( array( '.', '+', '$', '(', ')' ) as $special_char )
+			$permalink_structure = str_replace( $special_char, '\\' . $special_char, $permalink_structure );
+
 		//get everything up to the first rewrite tag
 		$front = substr($permalink_structure, 0, strpos($permalink_structure, '%'));
 		//build an array of the tags (note that said array ends up being in $tokens[0])
