From 5227880b0749a243d396f3443e0d988abcfae7af Mon Sep 17 00:00:00 2001 From: Geir Storli Date: Thu, 10 Jan 2019 10:41:28 +0000 Subject: Render single value position as object to match how top-level position fields are rendered. --- .../src/vespa/searchsummary/docsummary/positionsdfw.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'searchsummary/src') diff --git a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp index c968158b9c2..6b003553f49 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp @@ -157,10 +157,14 @@ insertFromAttr(const attribute::IAttributeVector &attribute, uint32_t docid, ves uint32_t numValues = pos.size(); LOG(debug, "docid=%d, numValues=%d", docid, numValues); if (numValues > 0) { - vespalib::slime::Cursor &arr = target.insertArray(); - for (uint32_t i = 0; i < numValues; i++) { - vespalib::slime::ArrayInserter ai(arr); - insertPos(pos[i], ai); + if (attribute.getCollectionType() == attribute::CollectionType::SINGLE) { + insertPos(pos[0], target); + } else { + vespalib::slime::Cursor &arr = target.insertArray(); + for (uint32_t i = 0; i < numValues; i++) { + vespalib::slime::ArrayInserter ai(arr); + insertPos(pos[i], ai); + } } } } -- cgit v1.2.3