Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1210)

Side by Side Diff: content/renderer/media/audio_renderer_mixer_manager.cc

Issue 517793003: Reorder AudioMessageFilter shutdown. Remove spammy DCHECK. (Closed) Base URL: http://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | content/renderer/render_thread_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/media/audio_renderer_mixer_manager.h" 5 #include "content/renderer/media/audio_renderer_mixer_manager.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "content/renderer/media/audio_device_factory.h" 9 #include "content/renderer/media/audio_device_factory.h"
10 #include "media/audio/audio_output_device.h" 10 #include "media/audio/audio_output_device.h"
11 #include "media/base/audio_hardware_config.h" 11 #include "media/base/audio_hardware_config.h"
12 #include "media/base/audio_renderer_mixer.h" 12 #include "media/base/audio_renderer_mixer.h"
13 #include "media/base/audio_renderer_mixer_input.h" 13 #include "media/base/audio_renderer_mixer_input.h"
14 14
15 namespace content { 15 namespace content {
16 16
17 AudioRendererMixerManager::AudioRendererMixerManager( 17 AudioRendererMixerManager::AudioRendererMixerManager(
18 media::AudioHardwareConfig* hardware_config) 18 media::AudioHardwareConfig* hardware_config)
19 : hardware_config_(hardware_config), 19 : hardware_config_(hardware_config),
20 sink_for_testing_(NULL) { 20 sink_for_testing_(NULL) {
21 } 21 }
22 22
23 AudioRendererMixerManager::~AudioRendererMixerManager() { 23 AudioRendererMixerManager::~AudioRendererMixerManager() {
24 DCHECK(mixers_.empty()); 24 // ARM owners may be garbage collected objects. During process shutdown they
scherkus (not reviewing) 2014/09/05 23:04:59 s/ARM/whatever-ARM-stands-for/?
DaleCurtis 2014/09/05 23:09:35 Done.
25 // may be leaked, so, transitively, |mixers_| may leak as well.
25 } 26 }
26 27
27 media::AudioRendererMixerInput* AudioRendererMixerManager::CreateInput( 28 media::AudioRendererMixerInput* AudioRendererMixerManager::CreateInput(
28 int source_render_view_id, int source_render_frame_id) { 29 int source_render_view_id, int source_render_frame_id) {
29 return new media::AudioRendererMixerInput( 30 return new media::AudioRendererMixerInput(
30 base::Bind( 31 base::Bind(
31 &AudioRendererMixerManager::GetMixer, base::Unretained(this), 32 &AudioRendererMixerManager::GetMixer, base::Unretained(this),
32 source_render_view_id, 33 source_render_view_id,
33 source_render_frame_id), 34 source_render_frame_id),
34 base::Bind( 35 base::Bind(
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 101
101 // Only remove the mixer if AudioRendererMixerManager is the last owner. 102 // Only remove the mixer if AudioRendererMixerManager is the last owner.
102 it->second.ref_count--; 103 it->second.ref_count--;
103 if (it->second.ref_count == 0) { 104 if (it->second.ref_count == 0) {
104 delete it->second.mixer; 105 delete it->second.mixer;
105 mixers_.erase(it); 106 mixers_.erase(it);
106 } 107 }
107 } 108 }
108 109
109 } // namespace content 110 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | content/renderer/render_thread_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698