From e6056ba0f2399fa3ebea9665e12a8237f99de250 Mon Sep 17 00:00:00 2001 From: Yu Yezhong Date: Tue, 15 Oct 2013 14:32:34 +0800 Subject: Frameworks: AudioFlinger: Fix effects memory leak Patch by: csheng@marvell.com Change-Id: I4e3032fb34643902f98e8fd7c8e894b6452324c9 Signed-off-by: Yu Yezhong --- services/audioflinger/AudioPolicyService.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'services') diff --git a/services/audioflinger/AudioPolicyService.cpp b/services/audioflinger/AudioPolicyService.cpp index 2706880..94f22b1 100644 --- a/services/audioflinger/AudioPolicyService.cpp +++ b/services/audioflinger/AudioPolicyService.cpp @@ -1338,6 +1338,14 @@ status_t AudioPolicyService::loadPreProcessorConfig(const char *path) loadEffects(root, effects); loadInputSources(root, effects); + // delete effects to fix memory leak. + // as effects is local var and valgrind would treat this as memory leak + // and although it only did in mediaserver init, but free it in case mediaserver reboot + size_t i; + for (i = 0; i < effects.size(); i++) { + delete effects[i]; + } + config_free(root); free(root); free(data); -- cgit v1.1