Opening score from the OS creates two entries for the same score in the recent scores list
MuseScore 2.0 Beta pre-release.
* erase recent scores list
* close MuseScore
* open a score double clicking from Explorer
* close the score inside MuseScore
* recent scores list has two entries of the same file
Comments
I can't reproduce with dacabe87e8 It's probably fixed.
Which beta are you using 1 or 2 ?
In reply to I can't reproduce with by [DELETED] 5
I'm using a925ae0
Is there a new one?
In reply to I'm using a925ae0 Is there a by 255
That build is 2.0 beta 2, Dec 22/14. Much has been fixed since. There's plenty of newer versions if you're willing to use a nightly (http://prereleases.musescore.org/windows/nightly/)
In reply to That build is 2.0 beta 2, Dec by schepers
I meant not nightly.
Anyway if it's fixed, then ok.
Can still reproduce with RC!
What OS are you on? Anything unusual about the folder where those files live - like they live on networked drives, removable drives, etc? Any symbolic links / shortcuts involved? I find sometimes the same file can have two different pathnames in cases like this, and that might explain this. I too get duplicates sometimes on Ubuntu, and I know it's because of this discrepancy (files live on a removable SD drive that is has different possible pathnames).
In reply to What OS are you on? Anything by Marc Sabatella
Confirmed with Windows 7 (Enterprise, 64bit)
No symbolic links nor shoertcuts, No network drives nor removable media, just a file sitting on my desktop
In reply to Confirmed with Windows 7 by Jojo-Schmitz
[ duplicate ]
In reply to Confirmed with Windows 7 by Jojo-Schmitz
Can you run under the debugger? If so, set a breakpoint on MuseScore::addRecentScore(Score*) in musescore.cpp. When the breakpoint is hit, you will see the pathnames MuseScore is trying to add, and then check the contents of _recentScores (under "this"), and you will see the full pathnames of the scores already in the list.
WIndows 7 has this concept of "libraries" and the whole "My Documents" versus "Documents" thing, and I can easily believe it would lead to the same file being addressed different ways depending on how it was presented. My guess is somehow, the file is showing up with one version of this pathname as importedFilePath(() but a different version of this same pathname as absoluteFilePath(). Or something like that.
I kind of think we should be using canonicalFilePath() instead of absolutelFilePath(), and making sure importedFilePath() also is always canonicalized, but I suspect that too would not be foolproof. And I know there have been other worse bugs with this list that have been fixed over the last few months, and I'd hate to risk regressions.
In reply to Can you run under the by Marc Sabatella
Something else we could consider - have a function to clean the recent scores list, explicitly going through every pathname on the list and canonicalizing it, and running this on shutdown.
In reply to Can you run under the by Marc Sabatella
Well, looking into MuseScoere2.ini I see
recent-0=C:/Users/username/Desktop/test.mscz
recent-1=C:\\Users\\username\\Desktop\\test.mscz
Not much need/use to look into debuging this, I guess
In reply to Well, looking into by Jojo-Schmitz
Indeed. This is another form of canonicalization issue, I guess. The same basic approach might fix this too.
In reply to Indeed. This is another form by Marc Sabatella
Should then I open an issue or has this already been solved?
In reply to Should then I open an issue by 255
It's not been solved yes, so yes, please open an issue.