Q_OBJECT
public:
SparkleUpdater(const QUrl &appCastUrl);
- ~SparkleUpdater() override;
+ ~SparkleUpdater();
void setUpdateUrl(const QUrl &url);
private:
class Private;
- Private *d;
+ std::unique_ptr<Private> d;
};
} // namespace OCC
namespace OCC {
-class SparkleUpdater::Private
+class Q_DECL_HIDDEN SparkleUpdater::Private
{
- public:
- SUUpdater* updater;
- DelegateObject *delegate;
+public:
+ ~Private()
+ {
+ [updater release];
+ [delegate release];
+ }
+
+ SUUpdater* updater;
+ DelegateObject *delegate;
};
// Delete ~/Library//Preferences/com.owncloud.desktopclient.plist to re-test
SparkleUpdater::SparkleUpdater(const QUrl& appCastUrl)
: Updater()
+ , d(std::make_unique<Private>())
{
- d = new Private;
-
d->delegate = [[DelegateObject alloc] init];
[d->delegate retain];
[d->updater setUserAgentString: userAgent];
}
-SparkleUpdater::~SparkleUpdater()
-{
- [d->updater release];
- delete d;
-}
+SparkleUpdater::~SparkleUpdater() = default;
void SparkleUpdater::setUpdateUrl(const QUrl &url)
{