summaryrefslogtreecommitdiff
path: root/src/lib/corelib/tools
diff options
context:
space:
mode:
authorIvan Komissarov <abbapoh@gmail.com>2021-05-13 01:08:23 +0200
committerIvan Komissarov <ABBAPOH@gmail.com>2021-05-13 16:27:05 +0000
commit1cd7ba74dc253a111ab3ff115547842c90421b94 (patch)
tree1680f3a8abeac830ef0c1b0100145823ce3a5e46 /src/lib/corelib/tools
parent2ca976dc2c9025ce41ed785b9b2c9f1249c81526 (diff)
downloadqbs-1cd7ba74dc253a111ab3ff115547842c90421b94.tar.gz
Do not use manual memory management for d-pointers
Change-Id: Ifde88ede2f9ac65f2406ef62b4115534f6fe7135 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Diffstat (limited to 'src/lib/corelib/tools')
-rw-r--r--src/lib/corelib/tools/profiling.cpp5
-rw-r--r--src/lib/corelib/tools/profiling.h4
-rw-r--r--src/lib/corelib/tools/settingsmodel.cpp8
-rw-r--r--src/lib/corelib/tools/settingsmodel.h4
4 files changed, 11 insertions, 10 deletions
diff --git a/src/lib/corelib/tools/profiling.cpp b/src/lib/corelib/tools/profiling.cpp
index 7e3559b54..db64a73c6 100644
--- a/src/lib/corelib/tools/profiling.cpp
+++ b/src/lib/corelib/tools/profiling.cpp
@@ -61,7 +61,7 @@ TimedActivityLogger::TimedActivityLogger(const Logger &logger, const QString &ac
{
if (!enabled)
return;
- d = new TimedActivityLoggerPrivate;
+ d = std::make_unique<TimedActivityLoggerPrivate>();
d->logger = logger;
d->activity = activity;
d->logger.qbsLog(LoggerInfo, true) << Tr::tr("Starting activity '%2'.").arg(activity);
@@ -75,8 +75,7 @@ void TimedActivityLogger::finishActivity()
const QString timeString = elapsedTimeString(d->timer.elapsed());
d->logger.qbsLog(LoggerInfo, true)
<< Tr::tr("Activity '%2' took %3.").arg(d->activity, timeString);
- delete d;
- d = nullptr;
+ d.reset();
}
TimedActivityLogger::~TimedActivityLogger()
diff --git a/src/lib/corelib/tools/profiling.h b/src/lib/corelib/tools/profiling.h
index 89f862ff9..c6fc9ede7 100644
--- a/src/lib/corelib/tools/profiling.h
+++ b/src/lib/corelib/tools/profiling.h
@@ -42,6 +42,8 @@
#include <QtCore/qelapsedtimer.h>
+#include <memory>
+
QT_BEGIN_NAMESPACE
class QString;
QT_END_NAMESPACE
@@ -61,7 +63,7 @@ public:
private:
class TimedActivityLoggerPrivate;
- TimedActivityLoggerPrivate *d;
+ std::unique_ptr<TimedActivityLoggerPrivate> d;
};
class AccumulatingTimer
diff --git a/src/lib/corelib/tools/settingsmodel.cpp b/src/lib/corelib/tools/settingsmodel.cpp
index 7192ef45f..7b75cc050 100644
--- a/src/lib/corelib/tools/settingsmodel.cpp
+++ b/src/lib/corelib/tools/settingsmodel.cpp
@@ -123,17 +123,15 @@ public:
};
SettingsModel::SettingsModel(const QString &settingsDir, Settings::Scope scope, QObject *parent)
- : QAbstractItemModel(parent), d(new SettingsModelPrivate)
+ : QAbstractItemModel(parent),
+ d(std::make_unique<SettingsModelPrivate>())
{
d->settings = std::make_unique<qbs::Settings>(settingsDir);
d->settings->setScopeForWriting(scope);
d->readSettings();
}
-SettingsModel::~SettingsModel()
-{
- delete d;
-}
+SettingsModel::~SettingsModel() = default;
void SettingsModel::reload()
{
diff --git a/src/lib/corelib/tools/settingsmodel.h b/src/lib/corelib/tools/settingsmodel.h
index 1bd59737c..63651d300 100644
--- a/src/lib/corelib/tools/settingsmodel.h
+++ b/src/lib/corelib/tools/settingsmodel.h
@@ -46,6 +46,8 @@
#include <QtCore/qabstractitemmodel.h>
#include <QtCore/qvariant.h>
+#include <memory>
+
namespace qbs {
class QBS_EXPORT SettingsModel : public QAbstractItemModel
@@ -81,7 +83,7 @@ public:
private:
class SettingsModelPrivate;
- SettingsModelPrivate * const d;
+ const std::unique_ptr<SettingsModelPrivate> d;
};
} // namespace qbs