diff options
Diffstat (limited to 'src/yuescript/yue_parser.cpp')
-rw-r--r-- | src/yuescript/yue_parser.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/yuescript/yue_parser.cpp b/src/yuescript/yue_parser.cpp index 5bb4817..e70c4a0 100644 --- a/src/yuescript/yue_parser.cpp +++ b/src/yuescript/yue_parser.cpp | |||
@@ -869,9 +869,10 @@ ParseInfo YueParser::parse(std::string_view codes, rule& r) { | |||
869 | codes = codes.substr(3); | 869 | codes = codes.substr(3); |
870 | } | 870 | } |
871 | try { | 871 | try { |
872 | res.codes = std::make_unique<input>(); | ||
873 | if (!codes.empty()) { | 872 | if (!codes.empty()) { |
874 | *(res.codes) = _converter.from_bytes(&codes.front(), &codes.back() + 1); | 873 | res.codes = std::make_unique<input>(_converter.from_bytes(&codes.front(), &codes.back() + 1)); |
874 | } else { | ||
875 | res.codes = std::make_unique<input>(); | ||
875 | } | 876 | } |
876 | } catch (const std::range_error&) { | 877 | } catch (const std::range_error&) { |
877 | res.error = "invalid text encoding"sv; | 878 | res.error = "invalid text encoding"sv; |