Browse Source

deps/json11: Update to most recent version

jp9000 5 years ago
parent
commit
0ab2b038e8
1 changed files with 5 additions and 3 deletions
  1. 5 3
      deps/json11/json11.cpp

+ 5 - 3
deps/json11/json11.cpp

@@ -441,9 +441,9 @@ struct JsonParser final {
      */
     char get_next_token() {
         consume_garbage();
-        if (failed) return (char)0;
+        if (failed) return static_cast<char>(0);
         if (i == str.size())
-            return fail("unexpected end of input", (char)0);
+            return fail("unexpected end of input", static_cast<char>(0));
 
         return str[i++];
     }
@@ -775,8 +775,10 @@ bool Json::has_shape(const shape & types, string & err) const {
         return false;
     }
 
+    const auto& obj_items = object_items();
     for (auto & item : types) {
-        if ((*this)[item.first].type() != item.second) {
+        const auto it = obj_items.find(item.first);
+        if (it == obj_items.cend() || it->second.type() != item.second) {
             err = "bad type for " + item.first + " in " + dump();
             return false;
         }