Forráskód Böngészése

Fix conversion from static string to number

Benoit Blanchon 11 hónapja
szülő
commit
67dd3120e6

+ 5 - 0
CHANGELOG.md

@@ -1,6 +1,11 @@
 ArduinoJson: change log
 =======================
 
+HEAD
+----
+
+* Fix conversion from static string to number
+
 v7.3.0 (2024-12-29)
 ------
 

+ 1 - 0
extras/tests/JsonVariant/as.cpp

@@ -183,6 +183,7 @@ TEST_CASE("JsonVariant::as()") {
     variant.set("42");
 
     REQUIRE(variant.as<long>() == 42L);
+    REQUIRE(variant.as<double>() == 42);
     REQUIRE(variant.as<JsonString>() == "42");
     REQUIRE(variant.as<JsonString>().isStatic() == true);
   }

+ 1 - 0
src/ArduinoJson/Variant/VariantData.hpp

@@ -199,6 +199,7 @@ class VariantData {
         return static_cast<T>(extension->asInt64);
 #endif
       case VariantType::LinkedString:
+        return parseNumber<T>(content_.asLinkedString);
       case VariantType::OwnedString:
         return parseNumber<T>(content_.asOwnedString->data);
       case VariantType::Float: