diff --git a/src/lib/rule.cpp b/src/lib/rule.cpp --- a/src/lib/rule.cpp +++ b/src/lib/rule.cpp @@ -101,15 +101,12 @@ void Rule::setDefinition(const Definition &def) { m_def = def; - - // cache for DefinitionData::wordDelimiters, is accessed VERY often - m_wordDelimiter = &DefinitionData::get(m_def.definition())->wordDelimiters; } bool Rule::load(QXmlStreamReader &reader) { Q_ASSERT(reader.tokenType() == QXmlStreamReader::StartElement); m_attribute = reader.attributes().value(QStringLiteral("attribute")).toString(); if (reader.name() != QLatin1String("IncludeRules")) // IncludeRules uses this with a different semantic m_context.parse(reader.attributes().value(QStringLiteral("context"))); @@ -140,8 +137,11 @@ void Rule::resolveContext() { m_context.resolve(m_def.definition()); + + // cache for DefinitionData::wordDelimiters, is accessed VERY often + m_wordDelimiter = &DefinitionData::get(m_def.definition())->wordDelimiters; } void Rule::resolveAttributeFormat(Context *lookupContext) { /**