VariantImpl: change setRawString() to take an adapted string

This commit is contained in:
Benoit Blanchon
2025-07-16 12:08:26 +02:00
parent 43548db37d
commit 3793996d83
2 changed files with 4 additions and 4 deletions

View File

@ -176,7 +176,7 @@ struct Converter<SerializedValue<T>> : private detail::VariantAttorney {
static void toJson(SerializedValue<T> src, JsonVariant dst) { static void toJson(SerializedValue<T> src, JsonVariant dst) {
auto variant = getImpl(dst); auto variant = getImpl(dst);
variant.clear(); variant.clear();
variant.setRawString(src); variant.setRawString(detail::adaptString(src.data(), src.size()));
} }
}; };

View File

@ -440,11 +440,11 @@ class VariantImpl {
return true; return true;
} }
template <typename T> template <typename TAdaptedString>
void setRawString(SerializedValue<T> value) { void setRawString(TAdaptedString value) {
if (!data_) if (!data_)
return; return;
auto dup = resources_->saveString(adaptString(value.data(), value.size())); auto dup = resources_->saveString(value);
if (dup) if (dup)
data_->setRawString(dup); data_->setRawString(dup);
} }