diff --git a/src/ArduinoJson/Variant/ConverterImpl.hpp b/src/ArduinoJson/Variant/ConverterImpl.hpp index a82f4aec..62a60198 100644 --- a/src/ArduinoJson/Variant/ConverterImpl.hpp +++ b/src/ArduinoJson/Variant/ConverterImpl.hpp @@ -176,7 +176,7 @@ struct Converter> : private detail::VariantAttorney { static void toJson(SerializedValue src, JsonVariant dst) { auto variant = getImpl(dst); variant.clear(); - variant.setRawString(src); + variant.setRawString(detail::adaptString(src.data(), src.size())); } }; diff --git a/src/ArduinoJson/Variant/VariantImpl.hpp b/src/ArduinoJson/Variant/VariantImpl.hpp index 2b601539..1f8a74f9 100644 --- a/src/ArduinoJson/Variant/VariantImpl.hpp +++ b/src/ArduinoJson/Variant/VariantImpl.hpp @@ -440,11 +440,11 @@ class VariantImpl { return true; } - template - void setRawString(SerializedValue value) { + template + void setRawString(TAdaptedString value) { if (!data_) return; - auto dup = resources_->saveString(adaptString(value.data(), value.size())); + auto dup = resources_->saveString(value); if (dup) data_->setRawString(dup); }