summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSzabolcs David <davidsz@inf.u-szeged.hu>2021-11-16 17:25:55 +0100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-11-17 19:45:46 +0000
commit06538b99bbdb29356a5c1307a924d583327d73ad (patch)
treed687569dd6fdd31a0d74b8b4adc000fa53991ff1
parentabc5294f11091c6c61c3b02858333acec4922ca7 (diff)
Fix crash in Quick file system access dialogs
In Quick examples, providing any answer to ui::SelectFileDialog::Listener results immediate destruction of FilePickerController and its m_isHandled flag remains false before the controller is destroyed. An "unhandled" controller calls reject() in destructor, so the controller will be answered twice. Change-Id: Iaff5b0f4f54b0b11a447ac624f5652e592a88e6e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit dfa69ea39fd524ef54b4a822d5a3163749d40ea5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/core/file_picker_controller.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/file_picker_controller.cpp b/src/core/file_picker_controller.cpp
index 051b877a4..90f5dcc07 100644
--- a/src/core/file_picker_controller.cpp
+++ b/src/core/file_picker_controller.cpp
@@ -211,6 +211,7 @@ ASSERT_ENUMS_MATCH(FilePickerController::Save, blink::mojom::FileChooserParams_M
void FilePickerController::filesSelectedInChooser(const QStringList &filesList)
{
+ m_isHandled = true;
if (d_ptr->fileDialogListener) {
QStringList files(filesList);
base::FilePath baseDir;
@@ -244,7 +245,6 @@ void FilePickerController::filesSelectedInChooser(const QStringList &filesList)
else
d_ptr->fileSystemAccessDialogListener->MultiFilesSelected(files, nullptr);
}
- m_isHandled = true;
}
QStringList FilePickerController::acceptedMimeTypes() const