Prevent memory leaks found via valgrind

This commit is contained in:
Martchus 2021-03-23 16:46:55 +01:00
parent abb9f5790a
commit 55341a7305
3 changed files with 11 additions and 11 deletions

View File

@ -116,7 +116,7 @@ void loadQtTranslationFile(initializer_list<QString> repositoryNames, const QStr
{ {
const auto debugTranslations = qEnvironmentVariableIsSet("QT_DEBUG_TRANSLATIONS"); const auto debugTranslations = qEnvironmentVariableIsSet("QT_DEBUG_TRANSLATIONS");
for (const auto &repoName : repositoryNames) { for (const auto &repoName : repositoryNames) {
auto *const qtTranslator = new QTranslator; auto *const qtTranslator = new QTranslator(QCoreApplication::instance());
const auto fileName = QString(repoName % QChar('_') % localeName); const auto fileName = QString(repoName % QChar('_') % localeName);
QString path; QString path;
@ -216,7 +216,7 @@ void logTranslationEvent(
*/ */
void loadApplicationTranslationFile(const QString &configName, const QString &applicationName, const QString &localeName) void loadApplicationTranslationFile(const QString &configName, const QString &applicationName, const QString &localeName)
{ {
auto *const appTranslator = new QTranslator; auto *const appTranslator = new QTranslator(QCoreApplication::instance());
const auto fileName = QString(applicationName % QChar('_') % localeName); const auto fileName = QString(applicationName % QChar('_') % localeName);
const auto directoryName = configName.isEmpty() ? applicationName : QString(applicationName % QChar('-') % configName); const auto directoryName = configName.isEmpty() ? applicationName : QString(applicationName % QChar('-') % configName);

View File

@ -29,7 +29,7 @@ namespace QtUtilities {
* file/directory via QFileDialog. * file/directory via QFileDialog.
*/ */
QCompleter *PathSelection::m_completer = nullptr; QCompleter *PathSelection::s_completer = nullptr;
/*! /*!
* \brief Constructs a path selection widget. * \brief Constructs a path selection widget.
@ -41,21 +41,21 @@ PathSelection::PathSelection(QWidget *parent)
, m_customDialog(nullptr) , m_customDialog(nullptr)
, m_customMode(QFileDialog::Directory) , m_customMode(QFileDialog::Directory)
{ {
if (!m_completer) { if (!s_completer) {
auto *fileSystemModel = new QFileSystemModel(m_completer); s_completer = new QCompleter;
s_completer->setCompletionMode(QCompleter::UnfilteredPopupCompletion);
auto *const fileSystemModel = new QFileSystemModel(s_completer);
fileSystemModel->setRootPath(QString()); fileSystemModel->setRootPath(QString());
m_completer = new QCompleter; s_completer->setModel(fileSystemModel);
m_completer->setCompletionMode(QCompleter::UnfilteredPopupCompletion);
m_completer->setModel(fileSystemModel);
} }
m_lineEdit->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); m_lineEdit->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
m_lineEdit->installEventFilter(this); m_lineEdit->installEventFilter(this);
m_lineEdit->setCompleter(m_completer); m_lineEdit->setCompleter(s_completer);
m_button->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed); m_button->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed);
m_button->setText(tr("Select ...")); m_button->setText(tr("Select ..."));
auto *layout = new QHBoxLayout(this); auto *const layout = new QHBoxLayout(this);
layout->setSpacing(3); layout->setSpacing(3);
layout->setContentsMargins(0, 0, 0, 0); layout->setContentsMargins(0, 0, 0, 0);
layout->addWidget(m_lineEdit); layout->addWidget(m_lineEdit);

View File

@ -34,7 +34,7 @@ private:
QPushButton *m_button; QPushButton *m_button;
QFileDialog *m_customDialog; QFileDialog *m_customDialog;
QFileDialog::FileMode m_customMode; QFileDialog::FileMode m_customMode;
static QCompleter *m_completer; static QCompleter *s_completer;
}; };
/*! /*!