diff options
Diffstat (limited to 'searchsummary/src/vespa/searchsummary/docsummary/attribute_tokens_dfw.cpp')
-rw-r--r-- | searchsummary/src/vespa/searchsummary/docsummary/attribute_tokens_dfw.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/attribute_tokens_dfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/attribute_tokens_dfw.cpp index 9e0dafc5e91..e47d16b03c0 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/attribute_tokens_dfw.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/attribute_tokens_dfw.cpp @@ -170,8 +170,12 @@ AttributeTokensDFW::insertField(uint32_t docid, const IDocsumStoreDocument*, Get { auto& field_writer_state = state._fieldWriterStates[_state_index]; if (!field_writer_state) { - const auto& attr = *state.getAttribute(getIndex()); - field_writer_state = make_field_writer_state(attr, state.get_stash()); + const auto attr = state.getAttribute(getIndex()); + if (attr != nullptr) { + field_writer_state = make_field_writer_state(*attr, state.get_stash()); + } else { + field_writer_state = &state.get_stash().create<EmptyDocsumFieldWriterState>(); + } } field_writer_state->insertField(docid, target); } |