From 47a8b6c8064f98626e0a5989cabd867c8fe93013 Mon Sep 17 00:00:00 2001 From: "dmaclach@chromium.org" Date: Sun, 18 Sep 2011 00:02:06 +0000 Subject: Merge 100258 - Fix destruction order in SSLSocketAdapter. SSLClientSocket must be destroyed before CertVerifier. Otherwise CertVerifierJist::DeleteAllCancelled() may DCHECK when closing XMPP connection. TEST=Host doesn't crash when destroying connection. BUG=94105 Review URL: http://codereview.chromium.org/7861003 TBR=sergeyu@chromium.org Review URL: http://codereview.chromium.org/7935008 git-svn-id: svn://svn.chromium.org/chrome/branches/874/src@101668 0039d316-1c4b-4281-b951-d872f2087c98 --- remoting/jingle_glue/ssl_socket_adapter.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'remoting/jingle_glue') diff --git a/remoting/jingle_glue/ssl_socket_adapter.h b/remoting/jingle_glue/ssl_socket_adapter.h index 388bd1c..e990310 100644 --- a/remoting/jingle_glue/ssl_socket_adapter.h +++ b/remoting/jingle_glue/ssl_socket_adapter.h @@ -135,8 +135,12 @@ class SSLSocketAdapter : public talk_base::SSLAdapter { bool ignore_bad_cert_; std::string hostname_; TransportSocket* transport_socket_; - scoped_ptr ssl_socket_; + + // |cert_verifier_| must be defined before |ssl_socket_|, so that + // it's destroyed after |ssl_socket_|. scoped_ptr cert_verifier_; + scoped_ptr ssl_socket_; + net::CompletionCallbackImpl connected_callback_; net::CompletionCallbackImpl read_callback_; net::CompletionCallbackImpl write_callback_; -- cgit v1.1