summaryrefslogtreecommitdiffstats
path: root/remoting/host/chromoting_host.cc
diff options
context:
space:
mode:
Diffstat (limited to 'remoting/host/chromoting_host.cc')
-rw-r--r--remoting/host/chromoting_host.cc16
1 files changed, 6 insertions, 10 deletions
diff --git a/remoting/host/chromoting_host.cc b/remoting/host/chromoting_host.cc
index fe54f78..434552f 100644
--- a/remoting/host/chromoting_host.cc
+++ b/remoting/host/chromoting_host.cc
@@ -104,7 +104,7 @@ void ChromotingHost::Start() {
}
// This method is called when we need to destroy the host process.
-void ChromotingHost::Shutdown(Task* shutdown_task) {
+void ChromotingHost::Shutdown(const base::Closure& shutdown_task) {
if (MessageLoop::current() != context_->main_message_loop()) {
context_->main_message_loop()->PostTask(
FROM_HERE,
@@ -121,7 +121,7 @@ void ChromotingHost::Shutdown(Task* shutdown_task) {
context_->main_message_loop()->PostTask(FROM_HERE, shutdown_task);
return;
}
- if (shutdown_task)
+ if (!shutdown_task.is_null())
shutdown_tasks_.push_back(shutdown_task);
if (state_ == kStopping)
return;
@@ -263,7 +263,7 @@ void ChromotingHost::OnIncomingSession(
*response = protocol::SessionManager::DECLINE;
// Close existing sessions and shutdown the host.
- Shutdown(NULL);
+ Shutdown(base::Closure());
return;
}
@@ -331,10 +331,7 @@ void ChromotingHost::LocalMouseMoved(const SkIPoint& new_pos) {
void ChromotingHost::PauseSession(bool pause) {
if (context_->main_message_loop() != MessageLoop::current()) {
context_->main_message_loop()->PostTask(
- FROM_HERE,
- NewRunnableMethod(this,
- &ChromotingHost::PauseSession,
- pause));
+ FROM_HERE, base::Bind(&ChromotingHost::PauseSession, this, pause));
return;
}
ClientList::iterator client;
@@ -610,10 +607,9 @@ void ChromotingHost::ShutdownFinish() {
(*it)->OnShutdown();
}
- for (std::vector<Task*>::iterator it = shutdown_tasks_.begin();
+ for (std::vector<base::Closure>::iterator it = shutdown_tasks_.begin();
it != shutdown_tasks_.end(); ++it) {
- (*it)->Run();
- delete *it;
+ it->Run();
}
shutdown_tasks_.clear();
}