Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(32)

Unified Diff: chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_runner_win.cc

Issue 2906493004: Chrome Cleaner UI: Use BrowserThread's DeleteOnIOThread for ChromePromptImpl (Closed)
Patch Set: Add comment explaining the use of bare new. Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_runner_win.cc
diff --git a/chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_runner_win.cc b/chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_runner_win.cc
index ce4ed9d4d5c3be7297915c060fdb5251d989be34..b8bddc9af5a8f683375bbd90f80e6fae100e8894 100644
--- a/chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_runner_win.cc
+++ b/chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_runner_win.cc
@@ -21,7 +21,6 @@
#include "components/chrome_cleaner/public/constants/constants.h"
#include "components/chrome_cleaner/public/interfaces/chrome_prompt.mojom.h"
#include "components/version_info/version_info.h"
-#include "content/public/browser/browser_thread.h"
#include "mojo/edk/embedder/connection_params.h"
#include "mojo/edk/embedder/embedder.h"
#include "mojo/edk/embedder/outgoing_broker_client_invitation.h"
@@ -41,13 +40,6 @@ namespace {
// tests.
ChromeCleanerRunnerTestDelegate* g_test_delegate = nullptr;
-void ReleaseChromePromptImpl(
- std::unique_ptr<ChromePromptImpl> chrome_prompt_impl) {
- DCHECK_CURRENTLY_ON(BrowserThread::IO);
- DCHECK(chrome_prompt_impl);
- chrome_prompt_impl.reset();
-}
-
} // namespace
// static
@@ -192,24 +184,20 @@ ChromeCleanerRunner::LaunchAndWaitForExitOnBackgroundThread() {
return {false, kBadProcessExitCode};
}
-ChromeCleanerRunner::~ChromeCleanerRunner() {
- if (chrome_prompt_impl_) {
- BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)
- ->PostTask(FROM_HERE, base::Bind(&ReleaseChromePromptImpl,
- base::Passed(&chrome_prompt_impl_)));
- }
-}
+ChromeCleanerRunner::~ChromeCleanerRunner() = default;
void ChromeCleanerRunner::CreateChromePromptImpl(
ChromePromptRequest chrome_prompt_request) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
DCHECK(!chrome_prompt_impl_);
- chrome_prompt_impl_ = base::MakeUnique<ChromePromptImpl>(
+ // Cannot use base::MakeUnique() since it does not support creating
+ // std::unique_ptrs with custom deleters.
+ chrome_prompt_impl_.reset(new ChromePromptImpl(
std::move(chrome_prompt_request),
base::Bind(&ChromeCleanerRunner::OnConnectionClosed,
base::RetainedRef(this)),
- base::Bind(&ChromeCleanerRunner::OnPromptUser, base::RetainedRef(this)));
+ base::Bind(&ChromeCleanerRunner::OnPromptUser, base::RetainedRef(this))));
}
void ChromeCleanerRunner::OnPromptUser(

Powered by Google App Engine
This is Rietveld 408576698