From af738780d3efea14733c5a3b5540fa715cd6bca6 Mon Sep 17 00:00:00 2001 From: Dong Rui Date: Tue, 1 Jun 2021 10:48:22 +0800 Subject: [PATCH] QFileDialog::saveFileContent crashes on accept MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When using QFileDialog::saveFileCOntent, there is a risk of crash. Using deleteLater in the dialogClosed lambda in QFileDialog::saveFileContent Pick-to: 5.15 Fixes: QTBUG-90442 Change-Id: I200ccda9d973af2fa9b6ce9d72a518b154ef2019 Reviewed-by: Morten Johan Sørvig --- src/widgets/dialogs/qfiledialog.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/widgets/dialogs/qfiledialog.cpp b/src/widgets/dialogs/qfiledialog.cpp index 931b8a69e3f..74484b629d8 100644 --- a/src/widgets/dialogs/qfiledialog.cpp +++ b/src/widgets/dialogs/qfiledialog.cpp @@ -2348,7 +2348,7 @@ void QFileDialog::getOpenFileContent(const QString &nameFilter, const std::funct auto dialogClosed = [=](int code) { Q_UNUSED(code); - delete dialog; + dialog->deleteLater(); }; connect(dialog, &QFileDialog::fileSelected, fileSelected); @@ -2393,7 +2393,7 @@ void QFileDialog::saveFileContent(const QByteArray &fileContent, const QString & auto dialogClosed = [=](int code) { Q_UNUSED(code); - delete dialog; + dialog->deleteLater(); }; connect(dialog, &QFileDialog::fileSelected, fileSelected);