musescore / musescore/MuseScore

MSCZ files corrupted beyond repair, because of corrupted ZIP file

Open
#16,339 16 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

corruption help wanted P1
Dominant language
C++
Stars
15.1k
Forks
3.3k
Avg merge
2d 2h
Merged PRs (30d)
91

Description

Describe the bug
A few times per month, someone somewhere in the world reports a file corruption where the ZIP container file has become corrupted, so that nothing of the contained score can be saved.

This has been the case for years now, and it is exactly the same in MS3 and MS4 for years now.

The problem exists in several variants:

  1. the saved MSCZ file is completely empty, i.e. 0KB
  2. the saved MSCZ file contains only zeros, no real data
  3. the saved MSCZ file contains seemingly random data
  4. the saved MSCZ file still looks a bit like a ZIP file but is still corrupted so that one or more files from it can't be read

In this issue, we will collect cases of this. When adding a case, please make sure to add the following information:

  • OS (Windows, macOS, Linux) and OS version
  • MuseScore version in which the file was saved the last time
  • Filename under which the file was saved
  • A link where the file in question can be downloaded, or at least a clear description which of the variants mentioned above is applicable

Please keep comments clear and concise, and don't use this thread for long back-and-forth conversations, to avoid making it longer than necessary.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no source files, tests, or entry points. Start by reviewing the reported MSCZ files alongside their OS, MuseScore version, filename, and corruption variant, then determine whether any case is reproducible. Done means identifying the cause and preventing affected MSCZ files from being saved corruptly.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.