summaryrefslogtreecommitdiffstats
path: root/services/audioflinger
diff options
context:
space:
mode:
authorSharad Sangle <assangle@codeaurora.org>2015-12-24 19:58:54 +0530
committerSteve Kondik <steve@cyngn.com>2016-01-18 23:52:20 -0800
commitf6e8c701024f6c5dac552e794dcc61016a7f1bf7 (patch)
treed4809dc1e96cb290bd277c5d61376500506ee21c /services/audioflinger
parent427887bc50ea2d9297f2710843a7c9b5c508f0fd (diff)
downloadframeworks_av-f6e8c701024f6c5dac552e794dcc61016a7f1bf7.zip
frameworks_av-f6e8c701024f6c5dac552e794dcc61016a7f1bf7.tar.gz
frameworks_av-f6e8c701024f6c5dac552e794dcc61016a7f1bf7.tar.bz2
AudioMixer: delete reformatBuffer provider in proper order
If mixer is creating reformatBufferProvider and downMixerBufferProvider while adding a track it first creates downMixerProvider then reformatBufferProvider. While deleting track it first deletes downMixerBufferProvider and then reformatBufferProvider, which should be in reverse order, the object created last should be deleted first. Change-Id: I844e7862280fe37c3167b31e92bbb27aa9463315
Diffstat (limited to 'services/audioflinger')
-rw-r--r--services/audioflinger/AudioMixer.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/services/audioflinger/AudioMixer.cpp b/services/audioflinger/AudioMixer.cpp
index 27a2f65..b830985 100644
--- a/services/audioflinger/AudioMixer.cpp
+++ b/services/audioflinger/AudioMixer.cpp
@@ -445,10 +445,10 @@ void AudioMixer::deleteTrackName(int name)
// delete the resampler
delete track.resampler;
track.resampler = NULL;
- // delete the downmixer
- mState.tracks[name].unprepareForDownmix();
// delete the reformatter
mState.tracks[name].unprepareForReformat();
+ // delete the downmixer
+ mState.tracks[name].unprepareForDownmix();
// delete the timestretch provider
delete track.mTimestretchBufferProvider;
track.mTimestretchBufferProvider = NULL;