audio/msm8660: Fix for improper LPA playback after seek
-LPA playback is not in continuous manner when rapid seek is performed
and effects is turned on/off.
-After seek, mSkipwrite flag is set to skip the current buffer either
in bufferavailable or write. If returned from write there is a
mismatch in buffer maintenance between flinger and hal as flinger
is not aware of buffer skip and has already pushed back the buffer
into mEffectsPool.
-Return error in skip case to handle in flinger and re-arrange buffers
to original state in mEffectsPool to avoid any mismatch.
Also mReachedEOS was getting set after fsync i.e. after write_done of
last buffer is processed and hence EOS was not getting posted to the
above layers. Moved this to ahead of fsync to avoid issues.
CRs-Fixed: 454460, 453872, 453833
(cherry picked from commit 8af44e4b795d289315188a3879a07596454bc923)
Change-Id: I98821fb0c97fdfc4f8d27e4480877ed963e5a61e
1 file changed