diff --git a/src/engraving/rendering/score/measurelayout.cpp b/src/engraving/rendering/score/measurelayout.cpp index a5443d2c0f5bc..a7c69dd31a154 100644 --- a/src/engraving/rendering/score/measurelayout.cpp +++ b/src/engraving/rendering/score/measurelayout.cpp @@ -2217,6 +2217,18 @@ void MeasureLayout::layoutTimeTickAnchors(Measure* m, LayoutContext& ctx) Fraction relativeTick = segment.rtick() - refCRSeg->rtick(); Segment* nextCRSeg = m->findSegmentR(SegmentType::ChordRest, refCRSeg->rtick() + refCRSeg->ticks()); + if (!nextCRSeg) { + Fraction refEndTick = refCRSeg->tick() + refSegDuration; + nextCRSeg = refCRSeg; + while (nextCRSeg) { + Segment* next = nextCRSeg->next(); + if (next && next->tick() <= refEndTick) { + nextCRSeg = next; + } else { + break; + } + } + } double width = nextCRSeg ? nextCRSeg->x() - refCRSeg->x() : refCRSeg->width(); double relativeX = width * (relativeTick.toDouble() / refCRSeg->ticks().toDouble()); diff --git a/vtest/scores/dynamics-11.mscz b/vtest/scores/dynamics-11.mscz new file mode 100644 index 0000000000000..994f4192f514d Binary files /dev/null and b/vtest/scores/dynamics-11.mscz differ