Segfault when editing linked score and tab staves

• Sep 10, 2012 - 17:27
Type
Functional
Severity
S2 - Critical
Status
closed
Project

GIT commit: 98faa8f

I have a quite simple score here, with two linked staves. They are based on the guitar instrument, but I have configured it like a prim balalaika with three strings. In the score file provided, it is quite easily reproduced:

1. Open the file and press n to insert notes,
2. Browse with the right arrow key to the first - (after the two interval scores),
3. Try inserting an F#-D interval by pressing F, shift+D,
4. If not already reproduced, try inserting some more similar intervals and it soon will.

When trying to reproduce this, it is not always trigging a segfault. Sometimes it can just whipe all scores away or do some other nasty thing. Here follows a backtrace of a segfault.

expand voice: found Chord 1/4
makeGap 1/4 at 0 track 0
remove Chord 1/4 at tick 0 track 0
makeGap: remove 1/4 at 0
akkumulated 1/4 rest 0/4 (-1/4)
expand voice: found Rest 1/4
makeGap 1/4 at 480 track 0
remove Rest 1/4 at tick 480 track 0
makeGap: remove 1/4 at 480
akkumulated 1/4 rest 0/4 (-1/4)
expand voice: found Chord 1/4
expand voice: found Rest 1/2
makeGap 1/4 at 960 track 0
remove Rest 1/2 at tick 960 track 0
makeGap: remove 1/2 at 960
makeGap: 1/4 removed 1/4 too much
dList: 1

gap at tick 960+480
addClone at 1440, 480
addClone Rest at 1440 1/4

Program received signal SIGSEGV, Segmentation fault.
QString (other=..., this=0x7fffffff9db0) at /usr/include/qt4/QtCore/qstring.h:726
726 { Q_ASSERT(&other != this); d->ref.ref(); }
(gdb) bt
#0 QString (other=..., this=0x7fffffff9db0) at /usr/include/qt4/QtCore/qstring.h:726
#1 StaffTypeTablature::fretString (this=, fret=-1, ghost=)
at /home/johan/Projects/MuseScore/libmscore/stafftype.cpp:640
#2 0x00000000008e6092 in Note::layout (this=0x6198f20) at /home/johan/Projects/MuseScore/libmscore/note.cpp:1208
#3 0x000000000086dc49 in Chord::layout (this=0x699e0b0) at /home/johan/Projects/MuseScore/libmscore/chord.cpp:1326
#4 0x00000000008c5d0c in Score::computeMinWidth (this=0x53fe900, fs=0x565fc60) at /home/johan/Projects/MuseScore/libmscore/layout.cpp:2652
#5 0x00000000008d0755 in Measure::minWidth2 (this=0x565b1b0) at /home/johan/Projects/MuseScore/libmscore/measure.cpp:2819
#6 0x00000000008c3006 in Score::layoutSystem (this=0x53fe900, minWidth=@0x7fffffffa5e8: 102.17708858267716, w=718.10946666666678,
isFirstSystem=true, longName=) at /home/johan/Projects/MuseScore/libmscore/layout.cpp:1008
#7 0x00000000008c329a in Score::layoutSystemRow (this=0x53fe900, rowWidth=718.10946666666678, isFirstSystem=true, useLongName=true)
at /home/johan/Projects/MuseScore/libmscore/layout.cpp:1693
#8 0x00000000008c4cc3 in Score::layoutSystems (this=0x53fe900) at /home/johan/Projects/MuseScore/libmscore/layout.cpp:2059
#9 0x00000000008c5313 in Score::doLayout (this=0x53fe900) at /home/johan/Projects/MuseScore/libmscore/layout.cpp:642
#10 0x000000000096b777 in Score::end2 (this=0x53fe900) at /home/johan/Projects/MuseScore/libmscore/cmd.cpp:166
#11 0x000000000097342f in Score::endCmd (this=0x53fe900) at /home/johan/Projects/MuseScore/libmscore/cmd.cpp:116
#12 0x0000000000580352 in ScoreView::cmdAddPitch (this=0x5602be0, note=1, addFlag=)
at /home/johan/Projects/MuseScore/mscore/scoreview.cpp:4979
#13 0x0000000000585ed4 in ScoreView::cmd (this=0x5602be0, a=0x1806630) at /home/johan/Projects/MuseScore/mscore/scoreview.cpp:2640
#14 0x000000000066a306 in MuseScore::cmd (this=0x1781d00, a=0x1806630, cmd=...) at /home/johan/Projects/MuseScore/mscore/musescore.cpp:4419
#15 0x000000000066a688 in MuseScore::cmd (this=0x1781d00, a=0x1806630) at /home/johan/Projects/MuseScore/mscore/musescore.cpp:4055
#16 0x0000000000565731 in MuseScore::qt_static_metacall (_o=0x1781d00, _c=, _id=, _a=)
at /home/johan/Projects/MuseScore/build.release/mscore/moc_musescore.cxx:583
#17 0x00007ffff3947281 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#18 0x00007ffff43e0c9f in QActionGroup::triggered(QAction*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#19 0x00007ffff43e0d27 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007ffff3947281 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#21 0x00007ffff43de132 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#22 0x00007ffff43de31f in QAction::activate(QAction::ActionEvent) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#23 0x00007ffff43de48f in QAction::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#24 0x00007ffff43e4894 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007ffff43e9713 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#26 0x00007ffff3932e9c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#27 0x00007ffff44168b9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#28 0x00007ffff4417d8a in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#29 0x00007ffff43eaf92 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#30 0x00007ffff3932e9c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#31 0x00007ffff4488c49 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#32 0x00007ffff44890bb in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
---Type to continue, or q to quit---
#33 0x00007ffff4463637 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#34 0x00007ffff448d0d2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#35 0x00007fffefaa0d53 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#36 0x00007fffefaa10a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x00007fffefaa1164 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007ffff39623bf in QEventDispatcherGlib::processEvents(QFlags) ()
from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#39 0x00007ffff448cd5e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#40 0x00007ffff3931c82 in QEventLoop::processEvents(QFlags) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#41 0x00007ffff3931ed7 in QEventLoop::exec(QFlags) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#42 0x00007ffff3936f67 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#43 0x000000000055c626 in main (argc=1, av=) at /home/johan/Projects/MuseScore/mscore/musescore.cpp:2476
(gdb) q

Attachment Size
Anastasia.mscz 3.57 KB

Comments