diff options
author | crogers@google.com <crogers@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-06 21:12:34 +0000 |
---|---|---|
committer | crogers@google.com <crogers@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-06 21:12:34 +0000 |
commit | ee1880f71b503740bad3644819fa88c63d2c3105 (patch) | |
tree | 26e3c33148f14bb8adaf8e76239fd00201e96f02 /media/audio/mac | |
parent | 5ece194449a237024c0b0893830f786052ef034f (diff) | |
download | chromium_src-ee1880f71b503740bad3644819fa88c63d2c3105.zip chromium_src-ee1880f71b503740bad3644819fa88c63d2c3105.tar.gz chromium_src-ee1880f71b503740bad3644819fa88c63d2c3105.tar.bz2 |
Avoid crash when changing sample-rates using live audio input
BUG=155940
R=dalecurtis@chromium.org
Review URL: https://codereview.chromium.org/14682018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198535 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/audio/mac')
-rw-r--r-- | media/audio/mac/audio_synchronized_mac.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/media/audio/mac/audio_synchronized_mac.cc b/media/audio/mac/audio_synchronized_mac.cc index 0534862..e9798e8 100644 --- a/media/audio/mac/audio_synchronized_mac.cc +++ b/media/audio/mac/audio_synchronized_mac.cc @@ -795,8 +795,10 @@ OSStatus AudioSynchronizedStream::HandleOutputCallback( UInt32 bus_number, UInt32 number_of_frames, AudioBufferList* io_data) { - if (first_input_time_ < 0.0) { - // Input callback hasn't run yet -> silence. + // Input callback hasn't run yet or we've suddenly changed sample-rates + // -> silence. + if (first_input_time_ < 0.0 || + static_cast<int>(number_of_frames) != params_.frames_per_buffer()) { ZeroBufferList(io_data); return noErr; } |