Browse Source

fix: delete rfh after open/save dialog done (#30927)

Co-authored-by: VerteDinde <[email protected]>
trop[bot] 3 years ago
parent
commit
e3aeba3581
1 changed files with 2 additions and 4 deletions
  1. 2 4
      shell/browser/file_select_helper.cc

+ 2 - 4
shell/browser/file_select_helper.cc

@@ -183,6 +183,7 @@ void FileSelectHelper::OnOpenDialogDone(gin_helper::Dictionary result) {
         browser_context->prefs()->SetFilePath(prefs::kSelectFileLastDirectory,
                                               paths[0].DirName());
       }
+      RunFileChooserEnd();
     }
   }
 }
@@ -214,6 +215,7 @@ void FileSelectHelper::OnSaveDialogDone(gin_helper::Dictionary result) {
     }
     // We should only call this if we have not cancelled the dialog.
     OnFilesSelected(std::move(file_info), base::FilePath());
+    RunFileChooserEnd();
   }
 }
 
@@ -224,10 +226,6 @@ void FileSelectHelper::OnFilesSelected(
     listener_->FileSelected(std::move(file_info), base_dir, mode_);
     listener_.reset();
   }
-
-  render_frame_host_ = nullptr;
-
-  delete this;
 }
 
 void FileSelectHelper::RenderWidgetHostDestroyed(