patterns: Don't re-evaluate format functions during highlighting

This commit is contained in:
WerWolv
2023-07-01 14:06:15 +02:00
parent c6c3ca4d26
commit a0c89858ed
2 changed files with 4 additions and 7 deletions

View File

@@ -1179,14 +1179,11 @@ namespace hex::plugin::builtin {
std::optional<ImColor> color;
if (TRY_LOCK(ContentRegistry::PatternLanguage::getRuntimeLock())) {
for (const auto &pattern : runtime.getPatternsAtAddress(address)) {
if (pattern->getVisibility() != pl::ptrn::Visibility::Visible)
continue;
for (const auto &patternColor : runtime.getColorsAtAddress(address)) {
if (color.has_value())
color = ImAlphaBlendColors(*color, pattern->getColor());
color = ImAlphaBlendColors(*color, patternColor);
else
color = pattern->getColor();
color = patternColor;
}
}