libaudioclient: fix AudioTrack blocking write after underrun
After checking that the ring buffer is full and before waiting for more buffer space,
there's a window where AudioFlinger may disable the track due to an underrun.
If this occurs, the client track will never wake up because it awaits buffer space
that will never become available.
This commit addresses the issue by ensuring the client track handles this scenario properly,
preventing a potential hang.
Change-Id: I4b9575c7a70ef7d5ad2158c9e27cd9259ab7cfe6
Signed-off-by:
youfa.song <vsyfar@gmail.com>
Loading
Please register or sign in to comment