media3/libraries
tianyifeng cd532c5fb2 Handle preload callbacks asynchronously in PreloadMediaSource
When there is an exception thrown from the `LoadTask`, the `Loader` will call `Loader.Callback.onLoadError`. Some implementations of `onLoadError` method may call `MediaPeriod.onContinueLoadingRequested`, and in the `PreloadMediaSource`, its `PreloadMediaPeriodCallback` will be triggered and then it can further call `continueLoading` if it finds needed. However the above process is currently done synchronously, which will cause problem. By calling `continueLoading`, the `Loader` is set with a `currentTask`, and when that long sync logic in `Loader.Callback.onLoadError` ends, the `Loader` will immediately retry, and then a non-null `currentTask` will cause the `IllegalStateException`.

Issue: androidx/media#1568

#cherrypick

PiperOrigin-RevId: 662550622
2024-08-13 09:45:35 -07:00
..
2024-08-09 21:18:31 -07:00
2024-08-07 12:28:25 -07:00
2024-08-07 12:28:25 -07:00
2024-07-24 16:17:00 +01:00
2024-07-24 16:17:00 +01:00
2024-07-24 16:17:00 +01:00
2024-08-07 12:28:25 -07:00
2024-08-07 12:28:25 -07:00
2024-07-24 16:17:00 +01:00
2024-08-05 05:31:46 -07:00