Commit a7ed4b89 authored by sergeyu@chromium.org's avatar sergeyu@chromium.org

Don't use MessageLoop and MessageLoopProxy in remoting/jingle_glue

MessageLoopProxy::current() may not work properly on plugin
threads unless the plugin is compiled into the browser.

BUG=134216

Review URL: https://chromiumcodereview.appspot.com/10830017

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148811 0039d316-1c4b-4281-b951-d872f2087c98
parent 950c3b3d
...@@ -5,10 +5,12 @@ ...@@ -5,10 +5,12 @@
#include "remoting/jingle_glue/fake_signal_strategy.h" #include "remoting/jingle_glue/fake_signal_strategy.h"
#include "base/bind.h" #include "base/bind.h"
#include "base/location.h"
#include "base/logging.h" #include "base/logging.h"
#include "base/message_loop.h" #include "base/single_thread_task_runner.h"
#include "base/stl_util.h" #include "base/stl_util.h"
#include "base/string_number_conversions.h" #include "base/string_number_conversions.h"
#include "base/thread_task_runner_handle.h"
#include "third_party/libjingle/source/talk/xmllite/xmlelement.h" #include "third_party/libjingle/source/talk/xmllite/xmlelement.h"
#include "third_party/libjingle/source/talk/xmpp/constants.h" #include "third_party/libjingle/source/talk/xmpp/constants.h"
...@@ -93,7 +95,7 @@ void FakeSignalStrategy::OnIncomingMessage( ...@@ -93,7 +95,7 @@ void FakeSignalStrategy::OnIncomingMessage(
scoped_ptr<buzz::XmlElement> stanza) { scoped_ptr<buzz::XmlElement> stanza) {
pending_messages_.push(stanza.get()); pending_messages_.push(stanza.get());
received_messages_.push_back(stanza.release()); received_messages_.push_back(stanza.release());
MessageLoop::current()->PostTask( base::ThreadTaskRunnerHandle::Get()->PostTask(
FROM_HERE, base::Bind(&FakeSignalStrategy::DeliverIncomingMessages, FROM_HERE, base::Bind(&FakeSignalStrategy::DeliverIncomingMessages,
weak_factory_.GetWeakPtr())); weak_factory_.GetWeakPtr()));
} }
......
...@@ -8,8 +8,9 @@ ...@@ -8,8 +8,9 @@
#include "base/location.h" #include "base/location.h"
#include "base/logging.h" #include "base/logging.h"
#include "base/memory/scoped_ptr.h" #include "base/memory/scoped_ptr.h"
#include "base/message_loop_proxy.h" #include "base/single_thread_task_runner.h"
#include "base/string_number_conversions.h" #include "base/string_number_conversions.h"
#include "base/thread_task_runner_handle.h"
#include "base/time.h" #include "base/time.h"
#include "remoting/jingle_glue/signal_strategy.h" #include "remoting/jingle_glue/signal_strategy.h"
#include "third_party/libjingle/source/talk/xmllite/xmlelement.h" #include "third_party/libjingle/source/talk/xmllite/xmlelement.h"
...@@ -145,9 +146,8 @@ IqRequest::~IqRequest() { ...@@ -145,9 +146,8 @@ IqRequest::~IqRequest() {
} }
void IqRequest::SetTimeout(base::TimeDelta timeout) { void IqRequest::SetTimeout(base::TimeDelta timeout) {
base::MessageLoopProxy::current()->PostDelayedTask( base::ThreadTaskRunnerHandle::Get()->PostDelayedTask(
FROM_HERE, base::Bind(&IqRequest::OnTimeout, AsWeakPtr()), FROM_HERE, base::Bind(&IqRequest::OnTimeout, AsWeakPtr()), timeout);
timeout);
} }
void IqRequest::CallCallback(const buzz::XmlElement* stanza) { void IqRequest::CallCallback(const buzz::XmlElement* stanza) {
...@@ -166,7 +166,7 @@ void IqRequest::OnResponse(const buzz::XmlElement* stanza) { ...@@ -166,7 +166,7 @@ void IqRequest::OnResponse(const buzz::XmlElement* stanza) {
// It's unsafe to delete signal strategy here, and the callback may // It's unsafe to delete signal strategy here, and the callback may
// want to do that, so we post task to invoke the callback later. // want to do that, so we post task to invoke the callback later.
scoped_ptr<buzz::XmlElement> stanza_copy(new buzz::XmlElement(*stanza)); scoped_ptr<buzz::XmlElement> stanza_copy(new buzz::XmlElement(*stanza));
base::MessageLoopProxy::current()->PostTask( base::ThreadTaskRunnerHandle::Get()->PostTask(
FROM_HERE, base::Bind(&IqRequest::DeliverResponse, AsWeakPtr(), FROM_HERE, base::Bind(&IqRequest::DeliverResponse, AsWeakPtr(),
base::Passed(&stanza_copy))); base::Passed(&stanza_copy)));
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment