From 4871b44197b94f73bb4c0712f01f6b680071f1c1 Mon Sep 17 00:00:00 2001 From: Alexander Pavlov Date: Tue, 17 Sep 2024 22:04:51 +0300 Subject: [PATCH] fixed stretched bend crash --- src/engraving/dom/stretchedbend.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/engraving/dom/stretchedbend.cpp b/src/engraving/dom/stretchedbend.cpp index d969079015216..786334ad34f00 100644 --- a/src/engraving/dom/stretchedbend.cpp +++ b/src/engraving/dom/stretchedbend.cpp @@ -462,6 +462,10 @@ void StretchedBend::fillStretchedSegments(bool untilNextSegment) } } + if (!untilNextSegment) { + return; + } + /// adjust coordinate to bend of tied back note StretchedBend* backTiedBend = backTiedStretchedBend(); if (backTiedBend) { @@ -474,6 +478,11 @@ void StretchedBend::fillStretchedSegments(bool untilNextSegment) for (EngravingItem* item : tiedBackChord->el()) { if (item->isStretchedBend()) { StretchedBend* bendToAdjust = toStretchedBend(item); + IF_ASSERT_FAILED(!bendToAdjust->m_bendSegmentsStretched.empty()) { + LOGE() << "wrong bend data while adjusting coordinates"; + return; + } + PointF& tiedBendEndPoint = bendToAdjust->m_bendSegmentsStretched.back().dest; tiedBendEndPoint.setX(newX); }