Audio HAL: Fix UAF if the effect is removed after close am: 532240f4eb am: 78836599d2

am: 21dfccb823

Change-Id: I0c607d42aa174c7e50ee53b838a811ae00c33970
This commit is contained in:
Mikhail Naganov
2019-12-04 17:41:20 -08:00
committed by android-build-merger

View File

@@ -709,7 +709,10 @@ Return<Result> Effect::close() {
#elif MAJOR_VERSION >= 6
// No need to join the processing thread, it is part of the API contract that the client
// must finish processing before closing the effect.
return analyzeStatus("EffectRelease", "", sContextCallFunction, EffectRelease(mHandle));
Result retval =
analyzeStatus("EffectRelease", "", sContextCallFunction, EffectRelease(mHandle));
EffectMap::getInstance().remove(mHandle);
return retval;
#endif
}