diff --git a/api/logic/BaseInstance.cpp b/api/logic/BaseInstance.cpp index 092680c4..38aea5d9 100644 --- a/api/logic/BaseInstance.cpp +++ b/api/logic/BaseInstance.cpp @@ -232,15 +232,21 @@ QString BaseInstance::iconKey() const void BaseInstance::setName(QString val, bool requestDirChange) { - if(m_settings->get("name") == val) { + if(m_settings->get("name") == val) + { return; } m_settings->set("name", val); emit propertiesChanged(this); - if(requestDirChange) { + if(requestDirChange && !isRunning()) + { emit instanceDirChangeRequest(this); } + else if(requestDirChange && isRunning()) + { + qWarning() << "Tried to rename running instance with folder"; + } } QString BaseInstance::name() const diff --git a/application/MainWindow.cpp b/application/MainWindow.cpp index 1ef0b698..5f9ca969 100644 --- a/application/MainWindow.cpp +++ b/application/MainWindow.cpp @@ -1831,6 +1831,7 @@ void MainWindow::instanceChanged(const QModelIndex ¤t, const QModelIndex & ui->actionLaunchInstanceOffline->setEnabled(m_selectedInstance->canLaunch()); ui->actionExportInstance->setEnabled(m_selectedInstance->canExport()); ui->renameButton->setText(m_selectedInstance->name()); + ui->actionRenameInstance->setDisabled(m_selectedInstance->isRunning()); m_statusLeft->setText(m_selectedInstance->getStatusbarDescription()); updateInstanceToolIcon(m_selectedInstance->iconKey());