Moving first dynamic on this score causes crash

Project:MuseScore
Component:Code
Category:bug report
Priority:critical
Assigned:Unassigned
Status:closed
Description

Hello,

Two bugs on dynamics and one on loading file
1 - Moving first dynamic on this score cause crash.
2 - Dynamics on second page are attached to the first not on the first page, moving this dynamics create crash
3 - Sometime crash on Load

Bye

Robert

AttachmentSize
Pavane pour une infante défunte_conducteur.mscz79.79 KB
#1
Title:Moving first dynamic on this score cause crash» [trunl] Moving first dynamic on this score cause crash
#2
Title:[trunl] Moving first dynamic on this score cause crash» [Trunk] Moving first dynamic on this score cause crash
#3
Title:[Trunk] Moving first dynamic on this score cause crash» [Trunk] Moving first dynamic on this score causes crash
Priority:normal» critical

I can't seem to reproduce: The score opened, and I moved the dynamic in the first bar of the basson and the second bar of cor1 - no crash.

What version and OS are you using?

Using MuseScore 2.0 Nightly Build (4928) - Mac 10.6.8.

#4

Windows seven

(Edit, Very strange i can't reproduce it now, before i can do it in easy and repeatly)

I try to reload the 1.1 score and for now i can't load it without crash. Is a know bug?

Edit2: if i move dynamics more than 10 try (releasing left click button each time), crash appear, next if i reload musescore and restore context, bug appear quickly

Edit3: If i hide navigator, bug dissapear

Robert

#5

If you mean the actual function 'Reload': #11620: [Trunk] Reload causes crash

I can't load the score into 1.1 - too old.

I still can't reproduce in the trunk (moved the first dynamic about 20 times).

#6

Hello,

No when i say reload for me is restart musescore and load again the score.

when i want load the same score created in 1.1 in the current version 2.0, a crash occur. I attach the 1.1 version of this score.

Sorry for my bad english

Edit 1: If i select a slur and put it in edit mode then type "esc", doing this more time force the navigator refresh like moving dynamics and cause crash to. I think is a navigator crash when is refreshed.

Robert

AttachmentSize
Pavane pour une infante défunte_conducteur_version11.mscz 48.39 KB
#7

@Gai-Luron

I think you are doing well. It seems to me that you are describing a number of steps that will help this to be solved.

Thanks,
Don

#8

Hello,

I try to put MuseScore in debug mode (-d), but not debug output. Is there a way to have debugging on local computer?
When museScore crash, Visual studio give me a machine code with null pointer. It's not easy to debug with this :-)

Edit1 : No null pointer now :-( grrrrrr
"Exception non gérée à 0x0b6c0028 dans mscore.exe : 0xC0000005: Violation d'accès lors de l'écriture à l'emplacement 0x268c6034."

Edit2: I recompile mscore with QTcreator and try to debug it ( i am not sure to do it, but i try :-) )

Robert

#9

I think it's caused by the parts, because 1.1 doesn't link them (seemed to notice this before). However, here, the parts (tabs) aren't even visible in 1.1.

Do you know how they ended up like that and how to make them visible on display the tabs in 1.1?

Using MuseScore 1.1 and 2.0 Nightly Build (4929) - Mac 10.6.8.

#10

Hello,

For now, I have many problem with QT creator.
Some var in CmakeList are not set correctly and i have to set them.
QT creator crash sometine. Not very stable this IDE.
I haven't success in compile musescore in debug mode :-(
I continue to investigate

Edit 1 : QT freeze when linking and use CPU and memory

Bye

#11

Alleluia, i can compile in debugmode

e->score()->end2();
...
if (_needLayout)
doLayout();
...
layoutSystems();
...
QList sl = layoutSystemRow(w, firstSystem, startWithLongNames);
...
for (bool a = true; a;) {
a = layoutSystem(minWidth, ww, isFirstSystem, useLongName);
...
system->layout(xo);
...
foreach(InstrumentName* t, ss->instrumentNames) {
t->layout();
...
layout(w, x, y);
...
_doc->setDefaultTextOption(to);
...

If you want more info or dump var

dolayout is doing this crash

Is this debug screen can help you. Crash begin in text.cpp and function layout and finish in ntdll

http://img7.imageshack.us/img7/1762/debugcrash.jpg

#12

Hello,

What is this "Signal-Received" who stop all threads?

No more info available

Robert

start debug:
Cannot connect to named pipe = \\.\pipe\server_jack_default_0 err = 2
Cannot connect to server pipe
Cannot connect to the server
Init midi driver failed

Can't open 'D:/Dev/Qt/musescore/qtcreator-build//sound/aeolus/stops/Aeolus/definition' for reading
Can't open 'D:/Dev/Qt/musescore/qtcreator-build//sound/aeolus/stops/Aeolus/presets' for reading
Can't open "C:\Users\Gai-Luron\AppData\Local\MuseScore\MuseScoreDevelopment/cookies.txt" to read cookies
Slur invalid start-end tick 102240-95250

HEAP[mscore.exe]:
Heap block at 1EA24D50 modified at 1EA24D60 past requested size of 8

#13

#2 the bug is fixed in current trunk.
It crash looks for me like a threading bug which needs further investigation. Unfortunatly i cannot reproduce...

#14

Hello,

i am looking for the source code (very hard to understand because much line of code :-) and C++ is new for me. I need some time to learn it. For now. i only used C, C#, VBA, Php, 4gl, and other i forgot but never C++ ). I don't understand why this is happenning. Say me if i wrong but the navigator refresh is done in a thread? does one thread for refreshing navigator is launched or more then one can exist at same time?.

A hint: i don't wait the end of navigator refresh when i move dynamics. This must be tested on slow computer.

Signal received is a SIGTRAP, not very usefull for debugging!!!! :-D

Sometine i need to move more than 30 or 40 time the dynamics and sometime one or 2 moves are sufficient.

If nobody can reproduce this bug, it's not critical for now and can be solved later

Bye

Robert

#15

Hi Robert

Are you able to answer #9 please :)?

Thanks
Scott

#16

Hello,

Sorry, I don't understand what do you mean.

Part are created in 1.1 for export only and are not visible at all in tab in version 1.1 (new tab appear if i create then only in part dialog box)
But now part are visible in 2.0 (new spec, i think) when loading score.

Do you want i delete part and test?

Edit1: With or without part, crash occur.
Edit2: Without navigator, no crash occur

Robert

#17

I know how parts are handled in 1.1 now - sorry, it's alright :).

Anyway, the crash relating to the navigator should be filed separately, I think.

#18

It seems that painting text is not reentrant in the qt library. MuseScore uses more than one thread on a multi core machine and it can happen that the score canvas and the navigator try to render the same text at the same time.
Rev. 4942 prohibits this. As the bug is hard to reproduce on my machine please test again.

#19

Hello,

I have more info regard to the -g switch added in CmakeFiles.txt

Same Bug. Crash when calling.

doc->documentLayout()->draw(_painter, c);

in function
void PainterQt::drawText(const QTextDocument* doc, const QAbstractTextDocumentLayout::PaintContext& c)
{
doc->documentLayout()->draw(_painter, c);
}
in painterqt.cpp

here the call stack:

if you want another debugging info, no problem

Robert

#20

Robert, can you try to reproduce with a more recent version of the trunk? after r4942 ? Thanks

#21
Title:[Trunk] Moving first dynamic on this score causes crash» Moving first dynamic on this score causes crash
Status:active» needs info

Can anyone still reproduce?

#22
Status:needs info» fixed

I'm marking this as fixed as noone seems to be able to reproduce now.

Please revert if necessary

#23
Status:fixed» closed

Automatically closed -- issue fixed for 2 weeks with no activity.

Syndicate content