summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorPedro J. Estébanez <pedrojrulez@gmail.com>2020-02-10 09:18:58 +0100
committerPedro J. Estébanez <pedrojrulez@gmail.com>2020-02-10 10:57:01 +0100
commit521da75380be712157fa172e27dda4dabba1de51 (patch)
tree2d29ef0c9351882146d4fa8802bcb2a44232a292 /core
parent47f19cc776940469a006aa3f7331166b32d9f7b4 (diff)
Fix VariantParser::StreamString EOF determination
Diffstat (limited to 'core')
-rw-r--r--core/variant_parser.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/core/variant_parser.cpp b/core/variant_parser.cpp
index 6ca9d6c246..4ce33b0123 100644
--- a/core/variant_parser.cpp
+++ b/core/variant_parser.cpp
@@ -51,10 +51,16 @@ bool VariantParser::StreamFile::is_eof() const {
CharType VariantParser::StreamString::get_char() {
- if (pos >= s.length())
+ if (pos > s.length()) {
return 0;
- else
+ } else if (pos == s.length()) {
+ // You need to try to read again when you have reached the end for EOF to be reported,
+ // so this works the same as files (like StreamFile does)
+ pos++;
+ return 0;
+ } else {
return s[pos++];
+ }
}
bool VariantParser::StreamString::is_utf8() const {