Skip to content

Commit 3ef4f66

Browse files
committed
Fix crash on range selection over multimeasure rest
1 parent 8d84f05 commit 3ef4f66

File tree

1 file changed

+11
-12
lines changed

1 file changed

+11
-12
lines changed

src/engraving/dom/select.cpp

+11-12
Original file line numberDiff line numberDiff line change
@@ -578,23 +578,22 @@ void Selection::appendChordRest(ChordRest* cr)
578578
appendTupletHierarchy(tuplet);
579579
}
580580

581-
if (cr->isRest()) {
582-
appendFiltered(cr);
583-
Rest* r = toRest(cr);
584-
for (int i = 0; i < r->dots(); ++i) {
585-
appendFiltered(r->dot(i));
581+
if (cr->isChord()) {
582+
Chord* chord = toChord(cr);
583+
for (Chord* graceNote : chord->graceNotes()) {
584+
if (canSelect(graceNote)) {
585+
appendChord(graceNote);
586+
}
586587
}
588+
appendChord(chord);
587589
return;
588590
}
589591

590-
Chord* chord = toChord(cr);
591-
for (Chord* graceNote : chord->graceNotes()) {
592-
if (canSelect(graceNote)) {
593-
appendChord(graceNote);
594-
}
592+
appendFiltered(cr);
593+
Rest* r = toRest(cr);
594+
for (int i = 0; i < r->dots(); ++i) {
595+
appendFiltered(r->dot(i));
595596
}
596-
597-
appendChord(chord);
598597
}
599598

600599
void Selection::appendChord(Chord* chord)

0 commit comments

Comments
 (0)