Fix two issues in audio effect framework reported by partners.
1 - Fixed duplicated audio buffer sent to effect process function when
pausing a track.
Modified Effectchain::process_l() function to clear the effect chain
input buffer before calling the effect process functions when no track
is active on the session. Previous code was clearing the buffer after
calling the process functions and when transitioning from active
to inactive, the last processed buffer was passed again once to effect
process function before being cleared.
2 - Fixed potential mutex cross deadlock when disconnecting an effect
while playback is active. This is because EffectChain::process_l()
was calling PlaybackThread::hasAudioSession() thus creating an inversion
in the mutex lock order (EffectChain mutex locked before ThreadBase mutex).
The fix consists in removing the call to hasAudioSession() from process_l()
and requires each effect chain to keep count of the number of audio tracks
attached to it (previously only the active tracks were accounted for).
Change-Id: Iee4246694ea8c7a66c012120c629d72dd38f9c35
* commit 'bdaa3abdf264372f337cfa9236e53b1e3cfde525':
DO NOT MERGE Handle GET_POWER failures
DO NOT MERGE: Don't send pause again when coming back from full screen
DO NOT MERGE MediaScanner: Add special casing of WMP album art files to isNoMediaPath()
DO NOT MERGE MediaScanner: Fix bug in "no media" handling logic
DO NOT MERGE MTP: Implement GetThumb command
DO NOT MERGE MTP: Fix file descriptor leak in file editing extensions
DO NOT MERGE MTP: Add extended operations to support in-place editing of files
DO NOT MERGE MediaScanner: reimplement the ".nomedia" feature for hiding files from the media provider
DO NOT MERGE Fix media scanner uri handling.
DO NOT MERGE Revert "Remove permission android.permission.WRITE_MEDIA_STORAGE"
DO NOT MERGE MTP and media provider support for multiple storage devices:
DO NOT MERGE MountService: Fix running media scanner at boot.
DO NOT MERGE Fix deadlock in MountService
DO NOT MERGE StorageManager: Add getVolumeList() and getVolumeState() methods
DO NOT MERGE MountService: Add support for multiple volumes
o most of the mp4 file boxes has its own method now
TODO: remove some of the duplicated code for esds box, for instance.
Change-Id: Iae3dbb2410b79bc79aaee081b80569d339993c47
* commit '44e39d608cfddcbf56123480123822f26f20f259':
DO NOT MERGE Handle GET_POWER failures
DO NOT MERGE: Don't send pause again when coming back from full screen
DO NOT MERGE MediaScanner: Add special casing of WMP album art files to isNoMediaPath()
DO NOT MERGE MediaScanner: Fix bug in "no media" handling logic
DO NOT MERGE MTP: Implement GetThumb command
DO NOT MERGE MTP: Fix file descriptor leak in file editing extensions
DO NOT MERGE MTP: Add extended operations to support in-place editing of files
DO NOT MERGE MediaScanner: reimplement the ".nomedia" feature for hiding files from the media provider
DO NOT MERGE Fix media scanner uri handling.
DO NOT MERGE Revert "Remove permission android.permission.WRITE_MEDIA_STORAGE"
DO NOT MERGE MTP and media provider support for multiple storage devices:
DO NOT MERGE MountService: Fix running media scanner at boot.
DO NOT MERGE Fix deadlock in MountService
DO NOT MERGE StorageManager: Add getVolumeList() and getVolumeState() methods
DO NOT MERGE MountService: Add support for multiple volumes
This column doesn't actually exist in the corresponding table, and
never has, so the presence of this definition is confusing.
Change-Id: I199f9a8effbdc9f45d51060830e3ad83675a0dff
Previously, the translucent boundary of AA lines would be scaled
by the line's transform. It should always be exactly one pixel wide
in screen space. This fix accounts for scaling for the boundary
region, and fixes some AA calculations that make wide/AA lines
more correct.
Change-Id: I30df2d5d96315bf3e7ff30be9735282fd5439a39