Index: /trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/formatter/EbnfFormatterVisitor.java
===================================================================
--- /trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/formatter/EbnfFormatterVisitor.java	(revision 25)
+++ /trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src/de/ugoe/cs/swe/bnftools/ui/formatter/EbnfFormatterVisitor.java	(revision 26)
@@ -190,5 +190,5 @@
 		formattedText = buf.toString();
 		
-		while (bufferPositionFormattedTextNoWhitespaces < formattedTextNoWhitespaces.length()) {
+		while (bufferPositionFormattedTextNoWhitespaces <= formattedTextNoWhitespaces.length()) {
 			skipWhitespacesOriginalText();
 			skipWhitespacesFormattedText(result);
@@ -197,5 +197,10 @@
 				break;
 			
-			char formattedPositionNoWhitespaces = formattedTextNoWhitespaces.charAt(bufferPositionFormattedTextNoWhitespaces);
+			char formattedPositionNoWhitespaces;
+			if (bufferPositionFormattedTextNoWhitespaces == formattedTextNoWhitespaces.length()) {
+				formattedPositionNoWhitespaces = ' ';
+			} else {
+				formattedPositionNoWhitespaces = formattedTextNoWhitespaces.charAt(bufferPositionFormattedTextNoWhitespaces);
+			}
 			char originalPosition = originalText.charAt(bufferPositionOriginalText);
 
