0f8ab670c0
The fix consists in locking AudioFlinger::mLock mutex in the TrackBase destructor before clearing the strong pointer to the shared memory client. The mutex is not locked in removeclient() any more which implies that we must make sure that the Client destructor is always called from the TrackBase destructor or that we hold the mLock mutex before calling deleting the Client. |
||
---|---|---|
.. | ||
A2dpAudioInterface.cpp | ||
A2dpAudioInterface.h | ||
Android.mk | ||
AudioBufferProvider.h | ||
AudioDumpInterface.cpp | ||
AudioDumpInterface.h | ||
AudioFlinger.cpp | ||
AudioFlinger.h | ||
AudioHardwareGeneric.cpp | ||
AudioHardwareGeneric.h | ||
AudioHardwareInterface.cpp | ||
AudioHardwareStub.cpp | ||
AudioHardwareStub.h | ||
AudioMixer.cpp | ||
AudioMixer.h | ||
AudioPolicyManagerGeneric.cpp | ||
AudioPolicyManagerGeneric.h | ||
AudioPolicyService.cpp | ||
AudioPolicyService.h | ||
AudioResampler.cpp | ||
AudioResampler.h | ||
AudioResamplerCubic.cpp | ||
AudioResamplerCubic.h | ||
AudioResamplerSinc.cpp | ||
AudioResamplerSinc.h |