aboutsummaryrefslogtreecommitdiff
path: root/launcher/meta/Version.h
diff options
context:
space:
mode:
authorflow <flowlnlnln@gmail.com>2022-11-01 19:48:26 -0300
committerflow <flowlnlnln@gmail.com>2022-11-01 19:48:26 -0300
commit7956e6f04e32448b0043a49ff08873e117ba0a0b (patch)
treea451fa409e400f3c9cc27715df3be7abc2ca043e /launcher/meta/Version.h
parentf6a3fa55b1fb4b10780065fd8e1df722cd40efd8 (diff)
downloadPrismLauncher-7956e6f04e32448b0043a49ff08873e117ba0a0b.tar.gz
PrismLauncher-7956e6f04e32448b0043a49ff08873e117ba0a0b.tar.bz2
PrismLauncher-7956e6f04e32448b0043a49ff08873e117ba0a0b.zip
fix: don't use forward-declared Ptr types in meta/
This would cause ODR violations when those headers were included in other places that also included stuff like "Version.h" (note the "meta/Version.h"), which can cause problems, especially in LTO. Signed-off-by: flow <flowlnlnln@gmail.com>
Diffstat (limited to 'launcher/meta/Version.h')
-rw-r--r--launcher/meta/Version.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/launcher/meta/Version.h b/launcher/meta/Version.h
index dea8dc8a..7228fa36 100644
--- a/launcher/meta/Version.h
+++ b/launcher/meta/Version.h
@@ -30,13 +30,14 @@
namespace Meta
{
-using VersionPtr = std::shared_ptr<class Version>;
class Version : public QObject, public BaseVersion, public BaseEntity
{
Q_OBJECT
-public: /* con/des */
+public:
+ using Ptr = std::shared_ptr<Version>;
+
explicit Version(const QString &uid, const QString &version);
virtual ~Version();
@@ -78,8 +79,8 @@ public: /* con/des */
return m_data != nullptr;
}
- void merge(const VersionPtr &other);
- void mergeFromList(const VersionPtr &other);
+ void merge(const Version::Ptr &other);
+ void mergeFromList(const Version::Ptr &other);
void parse(const QJsonObject &obj) override;
QString localFilename() const override;
@@ -113,4 +114,4 @@ private:
};
}
-Q_DECLARE_METATYPE(Meta::VersionPtr)
+Q_DECLARE_METATYPE(Meta::Version::Ptr)