Skip to content

Commit

Permalink
pattern: Fixed address of static array getPatternsAtAddress()members …
Browse files Browse the repository at this point in the history
…returned by
  • Loading branch information
WerWolv committed Jan 6, 2025
1 parent cc0b929 commit 3f112c0
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions lib/source/pl/pattern_language.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -523,9 +523,15 @@ namespace pl {
std::transform(intervals.begin(), intervals.end(), std::back_inserter(results), [](const auto &interval) {
ptrn::Pattern* value = interval.value;

auto parent = value->getParent();
while (parent != nullptr && dynamic_cast<const ptrn::PatternArrayStatic*>(parent->getParent()) == nullptr) {
parent = parent->getParent();
}

// Handle static array members
if (dynamic_cast<const ptrn::PatternArrayStatic*>(value->getParent())) {
value->setOffset(interval.interval.start);
if (parent != nullptr) {
parent->setOffset(interval.interval.start);
parent->clearFormatCache();
value->clearFormatCache();
}

Expand Down

0 comments on commit 3f112c0

Please sign in to comment.