summaryrefslogtreecommitdiffstats
path: root/media/audio/audio_output_controller.h
diff options
context:
space:
mode:
authortommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-19 09:16:58 +0000
committertommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-19 09:16:58 +0000
commit8f5fc718853a128dc2f70ec4e55db4044af64bcc (patch)
tree4f283d47012fd9594433990e89ad7f4fff3f0bcd /media/audio/audio_output_controller.h
parentae4e03118d9a8792b907c923adf6516495f20536 (diff)
downloadchromium_src-8f5fc718853a128dc2f70ec4e55db4044af64bcc.zip
chromium_src-8f5fc718853a128dc2f70ec4e55db4044af64bcc.tar.gz
chromium_src-8f5fc718853a128dc2f70ec4e55db4044af64bcc.tar.bz2
Add thread safety to AudioManagerBase to protect access to the audio thread member variable.
This is is a tentative fix for an issue where the AudioManager can crash while tearing down the audio thread. I suspect that this happens because more than one cleanup attempts were made since the class wasn't thread safe. I'm also changing direct access to the thread's MessageLoop* to use MessageLoopProxy based on the same theory. BUG=110051 TEST=Run media tests. Review URL: https://chromiumcodereview.appspot.com/9255017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118272 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/audio/audio_output_controller.h')
-rw-r--r--media/audio/audio_output_controller.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/media/audio/audio_output_controller.h b/media/audio/audio_output_controller.h
index 24de175..f6e5722 100644
--- a/media/audio/audio_output_controller.h
+++ b/media/audio/audio_output_controller.h
@@ -254,7 +254,7 @@ class MEDIA_EXPORT AudioOutputController
SyncReader* sync_reader_;
// The message loop of audio thread that this object runs on.
- MessageLoop* message_loop_;
+ scoped_refptr<base::MessageLoopProxy> message_loop_;
// When starting stream we wait for data to become available.
// Number of times left.