media/libraries
tonihei f9c6fb4e90 Ensure messages sent on a dead thread don't block FakeClock execution
FakeClock keeps an internal list of messages to be executed to
ensure deterministic serialization. The next message from the list
is triggered by a separate helper message sent to the real Handler.
However, if the target HandlerThread is no longer alive (e.g. when
it quit itself during the message execution), this helper
message is never executed and the entire message execution chain
is stuck forever.

This can be solved by checking the return values of Hander.post or
Handler.sendMessage, which are false if the message won't be
delivered. If the messages are not delivered, we can unblock the
chain by marking the message as complete and triggering the next
one.

PiperOrigin-RevId: 491275031
(cherry picked from commit 8fcc063093)
2023-01-25 17:41:00 +00:00
..
cast Rename getVideoSurfaceSize to getSurfaceSize 2022-11-17 10:06:29 +00:00
common Clean up javadoc on Metadata.Entry.populateMediaMetadata 2023-01-25 17:41:00 +00:00
database Mark all non-public IntDefs as only TYPE_USE 2022-02-21 16:56:36 +00:00
datasource Fix instrumentation tests not working via Gradle 2022-09-20 15:25:38 +00:00
datasource_cronet Fix instrumentation tests not working via Gradle 2022-09-20 15:25:38 +00:00
datasource_okhttp Annotate methods that always return this with @CanIgnoreReturnValue 2022-07-21 15:24:07 +00:00
datasource_rtmp Annotate methods that always return this with @CanIgnoreReturnValue 2022-07-21 15:24:07 +00:00
decoder Expect PresentationTime Discontinuity During Stream Transitions 2022-04-26 14:21:36 +01:00
decoder_av1 Fix Dackka parameter name error in Gav1Decoder and VpxDecoder 2022-11-10 10:19:01 +00:00
decoder_ffmpeg Add set -eu to all shell scripts 2023-01-25 17:37:31 +00:00
decoder_flac Fix Dackka/Metalava errors in av1, flac, ffmpeg, midi, and opus modules 2022-11-10 10:00:14 +00:00
decoder_opus Add set -eu to all shell scripts 2023-01-25 17:37:31 +00:00
decoder_vp9 Add set -eu to all shell scripts 2023-01-25 17:37:31 +00:00
effect Fix Dackka/Metalava errors in the effects module 2022-11-02 12:21:56 +00:00
exoplayer Remove flakiness from DefaultAnalyticsCollectorTest 2023-01-25 17:41:00 +00:00
exoplayer_dash Add missing IntDef on MediaSource.Factory.getSupportedTypes overrides 2022-11-10 12:24:56 +00:00
exoplayer_hls Add missing IntDef on MediaSource.Factory.getSupportedTypes overrides 2022-11-10 12:24:56 +00:00
exoplayer_ima Add missing IntDef on MediaSource.Factory.getSupportedTypes overrides 2022-11-10 12:24:56 +00:00
exoplayer_rtsp Add missing IntDef on MediaSource.Factory.getSupportedTypes overrides 2022-11-10 12:24:56 +00:00
exoplayer_smoothstreaming Add missing IntDef on MediaSource.Factory.getSupportedTypes overrides 2022-11-10 12:24:56 +00:00
exoplayer_workmanager Reformat some javadoc 2022-02-18 14:54:02 +00:00
extractor Convert bitrates to bps before setting it 2023-01-25 17:41:00 +00:00
session Handle the bitmap loading result with applicationHandler 2023-01-25 17:41:00 +00:00
test_data Convert bitrates to bps before setting it 2023-01-25 17:41:00 +00:00
test_exoplayer_playback Fix instrumentation tests not working via Gradle 2022-09-20 15:25:38 +00:00
test_session_common Migrate BROWSER_ROOT_HINTS_KEY_ROOT_CHILDREN_SUPPORTED_FLAGS to Media3 2023-01-25 17:38:34 +00:00
test_session_current Misc fix in gradle build file 2023-01-25 17:41:00 +00:00
test_utils Ensure messages sent on a dead thread don't block FakeClock execution 2023-01-25 17:41:00 +00:00
test_utils_robolectric Remove flakiness from DefaultAnalyticsCollectorTest 2023-01-25 17:41:00 +00:00
transformer HDR: Implement ForceInterpretHdrVideoAsSdr 2022-11-09 20:05:24 +00:00
ui Mark broadcast receivers as not exported 2023-01-25 17:37:31 +00:00
ui_leanback Listen to playWhenReady changes in LeanbackPlayerAdapter 2022-07-11 15:49:33 +00:00