summaryrefslogtreecommitdiffstats
path: root/remoting/jingle_glue
diff options
context:
space:
mode:
authorglen@chromium.org <glen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-10 02:46:54 +0000
committerglen@chromium.org <glen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-10 02:46:54 +0000
commit71eb23d453937c320f1c7a3f46c1aae335df6269 (patch)
tree6c13ed9a14c68b4bfda90c26fce9b03b1327c79d /remoting/jingle_glue
parent53d23fcc886d2a412cd8aaeb45c3c60f0586093c (diff)
downloadchromium_src-71eb23d453937c320f1c7a3f46c1aae335df6269.zip
chromium_src-71eb23d453937c320f1c7a3f46c1aae335df6269.tar.gz
chromium_src-71eb23d453937c320f1c7a3f46c1aae335df6269.tar.bz2
Revert 55507 - Start chromoting host in the service process though a method call
This change exposes method calls to configure the chromoting host and allow it to be started from a method. This will allow us to use IPC message to start the chromoting host. TEST=unit_tests --gtest_filter=ServiceProcess* BUG=50243, 50244 Review URL: http://codereview.chromium.org/3084024 TBR=hclam@chromium.org Review URL: http://codereview.chromium.org/3110004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55525 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/jingle_glue')
-rw-r--r--remoting/jingle_glue/jingle_client.cc15
1 files changed, 4 insertions, 11 deletions
diff --git a/remoting/jingle_glue/jingle_client.cc b/remoting/jingle_glue/jingle_client.cc
index b3ea334..eb89e21 100644
--- a/remoting/jingle_glue/jingle_client.cc
+++ b/remoting/jingle_glue/jingle_client.cc
@@ -76,11 +76,6 @@ void JingleClient::DoConnect(scoped_refptr<JingleChannel> channel,
}
void JingleClient::Close() {
- // Once we are closed we really shouldn't talk to the callback again. In the
- // case when JingleClient outlives the owner access the callback is not safe.
- // TODO(hclam): We need to lock to reset callback.
- callback_ = NULL;
-
message_loop()->PostTask(
FROM_HERE, NewRunnableMethod(this, &JingleClient::DoClose));
}
@@ -90,14 +85,12 @@ void JingleClient::DoClose() {
// If we have not yet initialized and the client is already closed then
// don't close again.
- if (state_ == CLOSED)
+ if (!callback_ || state_ == CLOSED)
return;
- if (client_) {
- client_->Disconnect();
- // Client is deleted by TaskRunner.
- client_ = NULL;
- }
+ client_->Disconnect();
+ // Client is deleted by TaskRunner.
+ client_ = NULL;
tunnel_session_client_.reset();
port_allocator_.reset();
session_manager_.reset();