NOISSUE shortcut creation: add version blacklist for joining server on launch

These versions are known to crash when joining a server on launch (see MC-145102 and MC-228828)
This commit is contained in:
arthomnix
2022-07-03 15:47:26 +01:00
parent bbdbe47e72
commit 7938585abb
2 changed files with 27 additions and 0 deletions

View File

@@ -11,6 +11,8 @@
#include "ui_CreateShortcutDialog.h"
#include "Application.h"
#include "minecraft/auth/AccountList.h"
#include "minecraft/MinecraftInstance.h"
#include "minecraft/PackProfile.h"
#include "icons/IconList.h"
#ifdef Q_OS_WIN
@@ -38,6 +40,15 @@ CreateShortcutDialog::CreateShortcutDialog(QWidget *parent, InstancePtr instance
ui->profileComboBox->setCurrentText(accounts->defaultAccount()->profileName());
}
if (m_instance->typeName() == "Minecraft")
{
MinecraftInstancePtr minecraftInstance = qobject_pointer_cast<MinecraftInstance>(m_instance);
QString version = minecraftInstance->getPackProfile()->getComponentVersion("net.minecraft");
bool enableJoinServer = QRegExp(JOIN_SERVER_DISALLOWED_VERSIONS).exactMatch(version);
ui->joinServerCheckBox->setEnabled(enableJoinServer);
ui->joinServer->setEnabled(enableJoinServer);
}
#if defined(Q_OS_UNIX) && !defined(Q_OS_LINUX)
ui->createScriptCheckBox->setEnabled(false);
ui->createScriptCheckBox->setChecked(true);