From 29f92bfb53a229a3c84aa6ff69f64d40c9699d9e Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Thu, 23 Feb 2017 08:38:29 -0800 Subject: [PATCH] Extend RefCounted and add private destructor --- atom/browser/web_dialog_helper.cc | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/atom/browser/web_dialog_helper.cc b/atom/browser/web_dialog_helper.cc index 94ff44d55..8ea212504 100644 --- a/atom/browser/web_dialog_helper.cc +++ b/atom/browser/web_dialog_helper.cc @@ -28,9 +28,7 @@ namespace { -class FileSelectHelper : public base::RefCountedThreadSafe< - FileSelectHelper, - content::BrowserThread::DeleteOnUIThread>, +class FileSelectHelper : public base::RefCounted, public content::WebContentsObserver { public: FileSelectHelper(content::RenderFrameHost* render_frame_host, @@ -44,18 +42,20 @@ class FileSelectHelper : public base::RefCountedThreadSafe< } void ShowOpenDialog(const file_dialog::DialogSettings& settings) { - auto callback = base::Bind(&FileSelectHelper::OnOpenDialogDone, - base::Unretained(this)); + auto callback = base::Bind(&FileSelectHelper::OnOpenDialogDone, this); file_dialog::ShowOpenDialog(settings, callback); } void ShowSaveDialog(const file_dialog::DialogSettings& settings) { - auto callback = base::Bind(&FileSelectHelper::OnSaveDialogDone, - base::Unretained(this)); + auto callback = base::Bind(&FileSelectHelper::OnSaveDialogDone, this); file_dialog::ShowSaveDialog(settings, callback); } private: + friend class base::RefCounted; + + ~FileSelectHelper() {} + void OnOpenDialogDone(bool result, const std::vector& paths) { std::vector file_info; if (result) { -- 2.34.1