diff options
Diffstat (limited to 'logic/OneSixInstance.cpp')
-rw-r--r-- | logic/OneSixInstance.cpp | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/logic/OneSixInstance.cpp b/logic/OneSixInstance.cpp index 3f1c5b0c..10411c56 100644 --- a/logic/OneSixInstance.cpp +++ b/logic/OneSixInstance.cpp @@ -325,8 +325,15 @@ bool OneSixInstance::reloadVersion(QWidget *widgetParent) { ret = d->vanillaVersion->reload(widgetParent, true, externalPatches()); } - - emit versionReloaded(); + if (ret) + { + setFlags(flags() & ~VersionBrokenFlag); + emit versionReloaded(); + } + else + { + setFlags(flags() | VersionBrokenFlag); + } return ret; } @@ -362,8 +369,14 @@ QString OneSixInstance::defaultCustomBaseJar() const bool OneSixInstance::menuActionEnabled(QString action_name) const { + if (flags() & VersionBrokenFlag) + { + return false; + } if (action_name == "actionChangeInstLWJGLVersion") + { return false; + } return true; } @@ -372,7 +385,11 @@ QString OneSixInstance::getStatusbarDescription() QString descr = "OneSix : " + intendedVersionId(); if (versionIsCustom()) { - descr + " (custom)"; + descr += " (custom)"; + } + if (flags() & VersionBrokenFlag) + { + descr += " (broken)"; } return descr; } |