From ce2d898da23a83c03db84c91e63901f4bce8f473 Mon Sep 17 00:00:00 2001 From: Alex Date: Tue, 14 Jun 2022 19:27:20 +0200 Subject: [PATCH] Correctly upgrade projects saved by LMMS forks (#6424) * Do project file upgrades based on file version and not on LMMS version * Do upgrade after version check --- src/core/DataFile.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/core/DataFile.cpp b/src/core/DataFile.cpp index 8248be8f3cc..2fe9b88d9ff 100644 --- a/src/core/DataFile.cpp +++ b/src/core/DataFile.cpp @@ -1922,8 +1922,6 @@ void DataFile::loadData( const QByteArray & _data, const QString & _sourceFile ) ProjectVersion createdWith = root.attribute("creatorversion"); ProjectVersion openedWith = LMMS_VERSION; - if (createdWith < openedWith) { upgrade(); } - if (createdWith.setCompareType(ProjectVersion::Minor) != openedWith.setCompareType(ProjectVersion::Minor) && getGUI() != nullptr && root.attribute("type") == "song" @@ -1941,6 +1939,9 @@ void DataFile::loadData( const QByteArray & _data, const QString & _sourceFile ) } } + // Perform upgrade routines + if (m_fileVersion < UPGRADE_METHODS.size()) { upgrade(); } + m_content = root.elementsByTagName(typeName(m_type)).item(0).toElement(); }