diff options
author | Petr Mrázek <peterix@gmail.com> | 2017-03-19 02:13:49 +0100 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2017-04-07 00:20:02 +0200 |
commit | 2660418d58efb33cd3a0ab8ed9d48c359c076905 (patch) | |
tree | 0f947fea5c1dc59a2db83bab85e3fecbc19e4c5c /api/logic/meta/VersionList.cpp | |
parent | e46aba9da584338db8d8a1a8a487bdcc6cf84343 (diff) | |
download | PrismLauncher-2660418d58efb33cd3a0ab8ed9d48c359c076905.tar.gz PrismLauncher-2660418d58efb33cd3a0ab8ed9d48c359c076905.tar.bz2 PrismLauncher-2660418d58efb33cd3a0ab8ed9d48c359c076905.zip |
NOISSUE hack it together enough to get launching back
Meta index will now always return valid objects.
They just might never load if they don't exist on the server.
Diffstat (limited to 'api/logic/meta/VersionList.cpp')
-rw-r--r-- | api/logic/meta/VersionList.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/api/logic/meta/VersionList.cpp b/api/logic/meta/VersionList.cpp index a12f5418..d6bbf70f 100644 --- a/api/logic/meta/VersionList.cpp +++ b/api/logic/meta/VersionList.cpp @@ -125,13 +125,15 @@ QString VersionList::humanReadable() const return m_name.isEmpty() ? m_uid : m_name; } -bool VersionList::hasVersion(const QString &version) const +VersionPtr VersionList::getVersion(const QString &version) { - return m_lookup.contains(version); -} -VersionPtr VersionList::getVersion(const QString &version) const -{ - return m_lookup.value(version); + VersionPtr out = m_lookup.value(version, nullptr); + if(!out) + { + out = std::make_shared<Version>(m_uid, version); + m_lookup[version] = out; + } + return out; } void VersionList::setName(const QString &name) |