From 09b0f20099c76e275c0037bbfbeef2b9eb443d7d Mon Sep 17 00:00:00 2001 From: Benoit Blanchon Date: Wed, 30 Mar 2022 21:26:47 +0200 Subject: [PATCH] size() ignores pointers (6796,5602) --- src/ArduinoJson/Variant/VariantData.hpp | 2 -- src/ArduinoJson/Variant/VariantFunctions.hpp | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/ArduinoJson/Variant/VariantData.hpp b/src/ArduinoJson/Variant/VariantData.hpp index e420e1b4..2d424db6 100644 --- a/src/ArduinoJson/Variant/VariantData.hpp +++ b/src/ArduinoJson/Variant/VariantData.hpp @@ -266,8 +266,6 @@ class VariantData { } size_t size() const { - if (isPointer()) // P+0 G+0 - return _content.asPointer->size(); return isCollection() ? _content.asCollection.size() : 0; } diff --git a/src/ArduinoJson/Variant/VariantFunctions.hpp b/src/ArduinoJson/Variant/VariantFunctions.hpp index d65b8c40..5fb8f217 100644 --- a/src/ArduinoJson/Variant/VariantFunctions.hpp +++ b/src/ArduinoJson/Variant/VariantFunctions.hpp @@ -58,7 +58,7 @@ inline bool variantSetString(VariantData *var, TAdaptedString value, } inline size_t variantSize(const VariantData *var) { - return var != 0 ? var->size() : 0; + return var != 0 ? var->resolve()->size() : 0; } inline CollectionData *variantToArray(VariantData *var) {