diff options
author | Arne H Juul <arnej@yahooinc.com> | 2022-02-04 16:22:22 +0000 |
---|---|---|
committer | Arne H Juul <arnej@yahooinc.com> | 2022-02-04 16:23:37 +0000 |
commit | fedb194a2ae5b98441170b41dabde0e243a44de5 (patch) | |
tree | 9f53a6d97e87e7e6dbbb0a2f912ba773864520f4 /vsm | |
parent | 9c29964bc758cf5b46699238fa05f10a780b499e (diff) |
special case for PositionDataType
Diffstat (limited to 'vsm')
-rw-r--r-- | vsm/src/vespa/vsm/vsm/slimefieldwriter.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/vsm/src/vespa/vsm/vsm/slimefieldwriter.cpp b/vsm/src/vespa/vsm/vsm/slimefieldwriter.cpp index 4a03c93127a..405f2292f5d 100644 --- a/vsm/src/vespa/vsm/vsm/slimefieldwriter.cpp +++ b/vsm/src/vespa/vsm/vsm/slimefieldwriter.cpp @@ -4,6 +4,8 @@ #include <vespa/searchlib/util/slime_output_raw_buf_adapter.h> #include <vespa/vespalib/stllike/asciistream.h> #include <vespa/vespalib/util/size_literals.h> +#include <vespa/searchsummary/docsummary/resultconfig.h> +#include <vespa/document/datatype/positiondatatype.h> #include <vespa/log/log.h> LOG_SETUP(".vsm.slimefieldwriter"); @@ -93,8 +95,9 @@ SlimeFieldWriter::traverseRecursive(const document::FieldValue & fv, Inserter &i } else if (clazz.inherits(document::StructuredFieldValue::classId)) { const document::StructuredFieldValue & sfv = static_cast<const document::StructuredFieldValue &>(fv); Cursor &o = inserter.insertObject(); -#ifdef USE_V8_GEO_POSITION_RENDERING - if (sfv.getDataType()->getName() == "position") { + if (sfv.getDataType() == &document::PositionDataType::getInstance() + && search::docsummary::ResultConfig::wantedV8geoPositions()) + { bool ok = true; try { int x = std::numeric_limits<int>::min(); @@ -121,7 +124,6 @@ SlimeFieldWriter::traverseRecursive(const document::FieldValue & fv, Inserter &i // fallback to code below } } -#endif for (const document::Field & entry : sfv) { if (explorePath(entry.getName())) { _currPath.push_back(entry.getName()); |