Fix JsonVariantTests

This commit is contained in:
Benoit Blanchon
2025-06-24 17:54:36 +02:00
parent 305d5357e1
commit 85fbe1932f
3 changed files with 17 additions and 0 deletions

View File

@ -20,6 +20,9 @@ inline ArrayImpl::iterator ArrayImpl::at(size_t index) const {
}
inline VariantData* ArrayImpl::addElement() {
if (!data_)
return nullptr;
ARDUINOJSON_ASSERT(resources_ != nullptr);
auto slot = resources_->allocVariant();
if (!slot)
return nullptr;

View File

@ -32,6 +32,9 @@ inline CollectionImpl::iterator CollectionImpl::createIterator() const {
}
inline void CollectionImpl::appendOne(Slot<VariantData> slot) {
ARDUINOJSON_ASSERT(data_ != nullptr);
ARDUINOJSON_ASSERT(resources_ != nullptr);
if (data_->tail != NULL_SLOT) {
auto tail = resources_->getVariant(data_->tail);
tail->setNext(slot.id());
@ -44,6 +47,9 @@ inline void CollectionImpl::appendOne(Slot<VariantData> slot) {
inline void CollectionImpl::appendPair(Slot<VariantData> key,
Slot<VariantData> value) {
ARDUINOJSON_ASSERT(data_ != nullptr);
ARDUINOJSON_ASSERT(resources_ != nullptr);
key->setNext(value.id());
if (data_->tail != NULL_SLOT) {

View File

@ -47,6 +47,10 @@ inline void ObjectImpl::removeMember(TAdaptedString key) {
template <typename TAdaptedString>
inline VariantData* ObjectImpl::addMember(TAdaptedString key) {
if (!data_)
return nullptr;
ARDUINOJSON_ASSERT(resources_ != nullptr);
auto keySlot = resources_->allocVariant();
if (!keySlot)
return nullptr;
@ -64,6 +68,10 @@ inline VariantData* ObjectImpl::addMember(TAdaptedString key) {
}
inline VariantData* ObjectImpl::addPair(VariantData** value) {
if (!data_)
return nullptr;
ARDUINOJSON_ASSERT(resources_ != nullptr);
auto keySlot = resources_->allocVariant();
if (!keySlot)
return nullptr;