aboutsummaryrefslogtreecommitdiff
path: root/src/lexer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/lexer.cc')
-rw-r--r--src/lexer.cc14
1 files changed, 3 insertions, 11 deletions
diff --git a/src/lexer.cc b/src/lexer.cc
index 129531d..8f712e2 100644
--- a/src/lexer.cc
+++ b/src/lexer.cc
@@ -107,17 +107,9 @@ Lexer::string(void)
return;
}
- int token_length = m_current - m_start - 1;
- if (token_length == 0)
- token_length++;
-
- char *lexeme;
- asprintf(&lexeme, "%.*s", token_length, m_script + m_start + 1);
-
- Token token;
- token.init(STRING, lexeme, m_line);
- m_tokens->add(&token);
- token.clean();
+ /* opening double quotes should not be in the lexeme */
+ m_start++;
+ add_token(STRING);
advance();
}