musescore crashes on save-as

• Oct 26, 2019 - 11:10

I'm attaching the score which I captured using musescore 3
museScore version="3.01">
3.2.3
d2d863f

When I open this score, and change two particular notes, then attempt to save-as (same file name with .mscx extension) Musescore crashes.

I'm also attaching the log file.

To reproduce,
1) open the score Geminiani-Sonata.mscx,
2) find measure 3, the piano base line, the last two notes are D D
3) change these notes to B B (down 1 staff line)
4) File -> Save As
5) Change file type from *.mscz to *.mscx
6) press Save
7) A dialog box will as to confirm, press Replace.

Musescore will think for a few seconds and then crash.

Attachment Size
crashlog.txt 97.69 KB
Geminiani-Sonate.mscx 433.85 KB

Comments

I have some new information. I just now downloaded the new version.

OS: macOS 10.15, Arch.: x86_64, MuseScore version (64-bit): 3.3.0.24090, revision: 4761df6

With this version, I can open a score (saved previously), and I CAN save-as the score as .mscx into a NEW file name. Then immediately try to re-save the same score as the same file as before, and musescore crashes.

I.e.,

1) open a score saved previously
2) make sure no file named "xyzzy.mscx" exists
3) save-as xyzzy.mscx
4) again save-as xyzzy.mscx

BTW, the reason that I'm so interested in save-as .mscx is because I always save in this format. Why? Because I keep my scores in a local git repo, and text files only need to save the diffs in successive versions of the repo. I.e., I don't have to save 100s of binary zipped files, just 100s of diffs of successive versions.

I just tried save-as mscx on the newest download version and worked. No crash. Then I repeated exactly the same action and it crashed again.

OS: macOS 10.15, Arch.: x86_64, MuseScore version (64-bit): 3.3.2.24203, revision: 492d7ef

So I continued testing. After restarting I saved-as the score to /tmp/test.mscx, and it worked. Then I saved-as again as /tmp/test1.mscx, and it worked. Then I saved-as a 3rd time to /tmp/test1.mscx, it asked me if I wanted to overwrite the file; I answered yes, and it crashed.

In reply to by jim.newton.562

I've just tried this again on musescore version 3.4.2.25137 (3.4.2.25137) and it still crashes on save-as mscx.

Process: mscore [51566]
Path: /Applications/MuseScore 3.app/Contents/MacOS/mscore
Identifier: org.musescore.MuseScore
Version: 3.4.2.25137 (3.4.2.25137)
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: mscore [51566]
User ID: 501

Date/Time: 2020-03-29 14:24:17.475 +0200
OS Version: Mac OS X 10.15.3 (19D76)
Report Version: 12
Bridge OS Version: 4.2 (17P3050)
Anonymous UUID: 71666555-47A2-B665-59F8-CFD83B7A508A

Sleep/Wake UUID: AD6C04D4-F8E1-453A-86E5-546C1EEEA7F5

Time Awake Since Boot: 1500000 seconds
Time Since Wake: 180000 seconds

System Integrity Protection: enabled

Crashed Thread: 0 CrBrowserMain Dispatch queue: com.apple.main-thread

Exception Type: EXC_BAD_INSTRUCTION (SIGILL)
Exception Codes: 0x0000000000000001, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY

Termination Signal: Illegal instruction: 4
Termination Reason: Namespace SIGNAL, Code 0x4
Terminating Process: exc handler [51566]

Application Specific Information:
Crashing on exception: unexpected class type for sandbox extension string!

Well, I found the cause of the problem, as well as a solution. See https://bugreports.qt.io/browse/QTBUG-83342 for details.

As a workaround, you can go to advanced preferences and uncheck ui/application/useNativeDialogs, since the problem is only with the native Cocoa save panel. Alternatively, if you would rather continue to use the native dialogs, you can prevent the crash by making any change to the name field, even if you then change it back to what it was originally. You must do this after changing the file type, if you are going to change the file type at all.

In reply to by jim.newton.562

Apparently you can also keep the other dialog form, but then you need to make sure that when you save to an existing file you "touch" the file name in the dialog before saving.
For example if the name of the file ends by the letter 'e', remove that letter, then type it again, then press save.

Do you still have an unanswered question? Please log in first to post your question.