std::string k = key(mKeyPrefix, name);
int length = getArraySize(k, object);
if (length < 0) {
- throw ConfigException("Missing json field " + key(mKeyPrefix, name));
+ throw ConfigException("Missing array length " + k);
}
value.resize(static_cast<size_t>(length));
FromKVJsonVisitor visitor(*this, name, false);
+ if (mStorePtr->exists(k)) {
+ visitor.mObject = nullptr;
+ }
for (int i = 0; i < length; ++i) {
visitor.getValue(i, value[i]);
}
int length = getArraySize(k, mObject);
value.resize(static_cast<size_t>(length));
FromKVJsonVisitor visitor(*this, i, false);
+ if (mStorePtr->exists(k)) {
+ visitor.mObject = nullptr;
+ }
for (int i = 0; i < length; ++i) {
visitor.getValue(i, value[i]);
}