diff options
author | Petr Mrázek <peterix@gmail.com> | 2014-03-09 23:42:25 +0100 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2014-03-09 23:42:25 +0100 |
commit | b2c803a378695026f12aabc3729eb2139bee1b2c (patch) | |
tree | 0629e45a270f15941bf0013ccc458d23c74b77d2 /logic/OneSixInstance.cpp | |
parent | ffff2cd3248a574d3d666731580ac7b8c33e1735 (diff) | |
download | MultiMC-b2c803a378695026f12aabc3729eb2139bee1b2c.tar MultiMC-b2c803a378695026f12aabc3729eb2139bee1b2c.tar.gz MultiMC-b2c803a378695026f12aabc3729eb2139bee1b2c.tar.lz MultiMC-b2c803a378695026f12aabc3729eb2139bee1b2c.tar.xz MultiMC-b2c803a378695026f12aabc3729eb2139bee1b2c.zip |
Improve reporting of version file errors.x
Diffstat (limited to 'logic/OneSixInstance.cpp')
-rw-r--r-- | logic/OneSixInstance.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/logic/OneSixInstance.cpp b/logic/OneSixInstance.cpp index f6fe49f1..3c1f6545 100644 --- a/logic/OneSixInstance.cpp +++ b/logic/OneSixInstance.cpp @@ -41,9 +41,17 @@ OneSixInstance::OneSixInstance(const QString &rootDir, SettingsObject *settings, void OneSixInstance::init() { + // FIXME: why is this decided here? what does this even mean? if (QDir(instanceRoot()).exists("version.json")) { - reloadVersion(); + try + { + reloadVersion(); + } + catch(MMCError & e) + { + // QLOG_ERROR() << "Caught exception on instance init: " << e.cause(); + } } else { @@ -317,7 +325,7 @@ QString OneSixInstance::currentVersionId() const return intendedVersionId(); } -bool OneSixInstance::reloadVersion() +void OneSixInstance::reloadVersion() { I_D(OneSixInstance); @@ -327,16 +335,15 @@ bool OneSixInstance::reloadVersion() d->vanillaVersion->reload(true, externalPatches()); setFlags(flags() & ~VersionBrokenFlag); emit versionReloaded(); - return true; } - catch(MMCError error) + catch(MMCError & error) { d->version->clear(); d->vanillaVersion->clear(); setFlags(flags() | VersionBrokenFlag); //TODO: rethrow to show some error message(s)? emit versionReloaded(); - return false; + throw; } } |