NOISSUE remove nonsensical logic related to 'MultiMC.app/' prefixes in update manifests
This commit is contained in:
parent
4e93c4d012
commit
a35a2e877e
@ -185,25 +185,6 @@ slots:
|
||||
qDebug() << expectedOperations;
|
||||
QCOMPARE(operations, expectedOperations);
|
||||
}
|
||||
|
||||
void test_OSXPathFixup()
|
||||
{
|
||||
QString path, pathOrig;
|
||||
bool result;
|
||||
// Proper OSX path
|
||||
pathOrig = path = "MultiMC.app/Foo/Bar/Baz";
|
||||
qDebug() << "Proper OSX path: " << path;
|
||||
result = fixPathForOSX(path);
|
||||
QCOMPARE(path, QString("Foo/Bar/Baz"));
|
||||
QCOMPARE(result, true);
|
||||
|
||||
// Bad OSX path
|
||||
pathOrig = path = "translations/klingon.lol";
|
||||
qDebug() << "Bad OSX path: " << path;
|
||||
result = fixPathForOSX(path);
|
||||
QCOMPARE(path, pathOrig);
|
||||
QCOMPARE(result, false);
|
||||
}
|
||||
};
|
||||
|
||||
extern "C"
|
||||
|
@ -33,13 +33,7 @@ bool parseVersionInfo(const QByteArray &data, VersionFileList &list, QString &er
|
||||
QJsonObject fileObj = fileValue.toObject();
|
||||
|
||||
QString file_path = fileObj.value("Path").toString();
|
||||
#ifdef Q_OS_MAC
|
||||
// On OSX, the paths for the updater need to be fixed.
|
||||
// basically, anything that isn't in the .app folder is ignored.
|
||||
// everything else is changed so the code that processes the files actually finds
|
||||
// them and puts the replacements in the right spots.
|
||||
fixPathForOSX(file_path);
|
||||
#endif
|
||||
|
||||
VersionFileEntry file{file_path, fileObj.value("Perms").toVariant().toInt(),
|
||||
FileSourceList(), fileObj.value("MD5").toString(), };
|
||||
qDebug() << "File" << file.path << "with perms" << file.mode;
|
||||
@ -201,19 +195,4 @@ bool processFileLists
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool fixPathForOSX(QString &path)
|
||||
{
|
||||
if (path.startsWith("MultiMC.app/"))
|
||||
{
|
||||
// remove the prefix and add a new, more appropriate one.
|
||||
path.remove(0, 12);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
qCritical() << "Update path not within .app: " << path;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
@ -123,14 +123,5 @@ bool MULTIMC_LOGIC_EXPORT processFileLists
|
||||
OperationList &ops
|
||||
);
|
||||
|
||||
/*!
|
||||
* This fixes destination paths for OSX - removes 'MultiMC.app' prefix
|
||||
* The updater runs in MultiMC.app/Contents/MacOs by default
|
||||
* The destination paths are such as this: MultiMC.app/blah/blah
|
||||
*
|
||||
* @return false if the path couldn't be fixed (is invalid)
|
||||
*/
|
||||
bool MULTIMC_LOGIC_EXPORT fixPathForOSX(QString &path);
|
||||
|
||||
}
|
||||
Q_DECLARE_METATYPE(GoUpdate::Status)
|
||||
|
Loading…
Reference in New Issue
Block a user