diff options
author | Claudius "keldu" Holeksa <mail@keldu.de> | 2025-04-24 10:22:27 +0200 |
---|---|---|
committer | Claudius "keldu" Holeksa <mail@keldu.de> | 2025-04-24 10:22:27 +0200 |
commit | 104e9b27ca52b89d88256155820272a8f8dd6110 (patch) | |
tree | 2512164fdfa20180041e7dd2561aeb2816ce54cb /modules | |
parent | ebdeba46d38ed2aa9fe8025f28f69f67045264ae (diff) |
Need to write better logic at some point, but right now it works
Diffstat (limited to 'modules')
-rw-r--r-- | modules/codec-json/c++/json.tmpl.hpp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/modules/codec-json/c++/json.tmpl.hpp b/modules/codec-json/c++/json.tmpl.hpp index 0ff2a38..a6d4a20 100644 --- a/modules/codec-json/c++/json.tmpl.hpp +++ b/modules/codec-json/c++/json.tmpl.hpp @@ -506,7 +506,7 @@ struct json_decode<schema::Primitive<T,N>, ToDecode> { return make_error<err::buffer_exhausted>(); } /** - * In case of integers it's at least 1. Hacky float + * In case of decimal integers it's at least 1. Hacky float needs 0. */ if (buff.read(offset) >= '0' && buff.read(offset) <= '9') { bool leading_zero = (buff.read(offset) == '0'); @@ -521,16 +521,13 @@ struct json_decode<schema::Primitive<T,N>, ToDecode> { } } - /** - * Hacky setup for float check - */ + /* Wrong because this falls into a state where ',' after a single '0' is an error. if(do_loop && leading_zero){ - /* Wrong because this falls into a state where ',' is an error. if(buff.read(offset) != '.'){ return make_error<err::invalid_state>("Leading zero, but no '.' afterwards"); } - */ } + */ while(do_loop){ if (buff.read(offset) >= '0' && buff.read(offset) <= '9') { |