From fd1cd3c589a0ff94d8fbbab949e084ff00bcda5c Mon Sep 17 00:00:00 2001 From: "sanjeevr@chromium.org" Date: Fri, 30 Dec 2011 02:03:35 +0000 Subject: Called Stop in d'tor of of JingleThread. It is important to call Stop here. If we wait for the base class to call Stop in it's d'tor, then JingleThread::Run() will access member variables that are already gone. See similar comments in base/thread.h. BUG=None TEST=None Review URL: http://codereview.chromium.org/9003011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116018 0039d316-1c4b-4281-b951-d872f2087c98 --- remoting/jingle_glue/jingle_thread.cc | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'remoting/jingle_glue') diff --git a/remoting/jingle_glue/jingle_thread.cc b/remoting/jingle_glue/jingle_thread.cc index d31857e..742e3b1 100644 --- a/remoting/jingle_glue/jingle_thread.cc +++ b/remoting/jingle_glue/jingle_thread.cc @@ -144,7 +144,14 @@ JingleThread::JingleThread() message_loop_(NULL) { } -JingleThread::~JingleThread() { } +JingleThread::~JingleThread() { + // It is important to call Stop here. If we wait for the base class to + // call Stop in it's d'tor, then JingleThread::Run() will access member + // variables that are already gone. See similar comments in + // base/threading/thread.h. + if (message_loop_) + Stop(); +} void JingleThread::Start() { Thread::Start(); -- cgit v1.1