From f64c699df04adb4eedd5a159c7e97af65670cda9 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Mon, 27 Jan 2020 20:59:41 +0000 Subject: reset instead of clear, and only once --- document/src/vespa/document/fieldvalue/structfieldvalue.cpp | 2 +- .../src/vespa/document/serialization/vespadocumentdeserializer.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'document') diff --git a/document/src/vespa/document/fieldvalue/structfieldvalue.cpp b/document/src/vespa/document/fieldvalue/structfieldvalue.cpp index b448b2b33bc..3763a5e3405 100644 --- a/document/src/vespa/document/fieldvalue/structfieldvalue.cpp +++ b/document/src/vespa/document/fieldvalue/structfieldvalue.cpp @@ -390,7 +390,7 @@ StructFieldValue::getIterator(const Field* toFind) const void StructFieldValue::setType(const DataType& type) { - clear(); + reset(); StructuredFieldValue::setType(type); } diff --git a/document/src/vespa/document/serialization/vespadocumentdeserializer.cpp b/document/src/vespa/document/serialization/vespadocumentdeserializer.cpp index 039df466872..94644438f5c 100644 --- a/document/src/vespa/document/serialization/vespadocumentdeserializer.cpp +++ b/document/src/vespa/document/serialization/vespadocumentdeserializer.cpp @@ -74,15 +74,15 @@ void VespaDocumentDeserializer::readDocument(Document &value) { if (type) { Document::verifyIdAndType(value.getId(), type); value.setType(*type); - value.clear(); value.setLastModified(0); + } else { + value.getFields().reset(); } value.setRepo(_repo.getDocumentTypeRepo()); FixedTypeRepo repo(_repo.getDocumentTypeRepo(), value.getType()); VarScope repo_scope(_repo, repo); uint32_t chunkCount = getChunkCount(content_code); - value.getFields().reset(); for (uint32_t i = 0; i < chunkCount; ++i) { readStructNoReset(value.getFields()); } -- cgit v1.2.3