From cd0383a5cdb303a552ef13fc3c70261d36823ba8 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 30 Apr 2016 15:51:46 +0100 Subject: Handle unterminated strings in tokenizer --- .../mammoth/internal/styles/parsing/StyleMappingTokeniser.java | 4 ++++ .../java/org/zwobble/mammoth/internal/styles/parsing/TokenType.java | 1 + 2 files changed, 5 insertions(+) (limited to 'src/main') diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/StyleMappingTokeniser.java b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/StyleMappingTokeniser.java index fe36242..4c6a2a9 100644 --- a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/StyleMappingTokeniser.java +++ b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/StyleMappingTokeniser.java @@ -27,6 +27,10 @@ public class StyleMappingTokeniser { index = startIndex + 2; } else { index = seekEndOfToken(line, startIndex + 1, tokenType); + if (tokenType == TokenType.STRING && index == line.length() + 1) { + tokenType = TokenType.UNTERMINATED_STRING; + index -= 1; + } } return new Token(tokenType, line.substring(startIndex, index)); } diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/TokenType.java b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/TokenType.java index c9cc9a4..04a0b64 100644 --- a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/TokenType.java +++ b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/TokenType.java @@ -13,6 +13,7 @@ public enum TokenType { OPEN_SQUARE_BRACKET, CLOSE_SQUARE_BRACKET, STRING, + UNTERMINATED_STRING, INTEGER, CHOICE, EOF, -- cgit v1.2.3