| Index: media/audio/virtual_audio_input_stream.cc
|
| diff --git a/media/audio/virtual_audio_input_stream.cc b/media/audio/virtual_audio_input_stream.cc
|
| index e586ac88618872d9790c0e3e1e30bb3a6ed5e408..5fd12a0f3a2ce66a44c7bbbf1547c65fa2f29f1b 100644
|
| --- a/media/audio/virtual_audio_input_stream.cc
|
| +++ b/media/audio/virtual_audio_input_stream.cc
|
| @@ -50,9 +50,9 @@ class LoopbackAudioConverter : public AudioConverter::InputCallback {
|
| VirtualAudioInputStream::VirtualAudioInputStream(
|
| const AudioParameters& params,
|
| const scoped_refptr<base::SingleThreadTaskRunner>& worker_task_runner,
|
| - const AfterCloseCallback& after_close_cb)
|
| + bool delete_on_close)
|
| : worker_task_runner_(worker_task_runner),
|
| - after_close_cb_(after_close_cb),
|
| + delete_on_close_(delete_on_close),
|
| callback_(NULL),
|
| buffer_(new uint8[params.GetBytesPerBuffer()]),
|
| params_(params),
|
| @@ -152,13 +152,8 @@ void VirtualAudioInputStream::Close() {
|
|
|
| Stop(); // Make sure callback_ is no longer being used.
|
|
|
| - // If a non-null AfterCloseCallback was provided to the constructor, invoke it
|
| - // here. The callback is moved to a stack-local first since |this| could be
|
| - // destroyed during Run().
|
| - if (!after_close_cb_.is_null()) {
|
| - const AfterCloseCallback cb = after_close_cb_;
|
| - after_close_cb_.Reset();
|
| - cb.Run(this);
|
| + if (delete_on_close_) {
|
| + delete this;
|
| }
|
| }
|
|
|
|
|