From cc7f9ba5390466f1d937515636ce58f406de3be7 Mon Sep 17 00:00:00 2001 From: Alexander Capehart Date: Wed, 21 Aug 2024 13:58:01 -0600 Subject: [PATCH] tasker: fix player main thread bugs on restore --- .../auxio/playback/service/ExoPlaybackStateHolder.kt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/org/oxycblt/auxio/playback/service/ExoPlaybackStateHolder.kt b/app/src/main/java/org/oxycblt/auxio/playback/service/ExoPlaybackStateHolder.kt index 804470a35..59ac16d95 100644 --- a/app/src/main/java/org/oxycblt/auxio/playback/service/ExoPlaybackStateHolder.kt +++ b/app/src/main/java/org/oxycblt/auxio/playback/service/ExoPlaybackStateHolder.kt @@ -164,17 +164,17 @@ class ExoPlaybackStateHolder( logD("Restoring playback state") restoreScope.launch { val state = persistenceRepository.readState() - if (state != null) { - // Apply the saved state on the main thread to prevent code expecting - // state updates on the main thread from crashing. - withContext(Dispatchers.Main) { + withContext(Dispatchers.Main) { + if (state != null) { + // Apply the saved state on the main thread to prevent code expecting + // state updates on the main thread from crashing. playbackManager.applySavedState(state, false) if (action.play) { playbackManager.playing(true) } + } else if (action.fallback != null) { + playbackManager.playDeferred(action.fallback) } - } else if (action.fallback != null) { - playbackManager.playDeferred(action.fallback) } } }