From e12dd1ac5da521ff01edf11b9813a63b5d80184d Mon Sep 17 00:00:00 2001 From: kimvde Date: Thu, 24 Nov 2022 14:29:29 +0000 Subject: [PATCH] Surface player release timeouts Also make sure the demo app doesn't crash when it happens. PiperOrigin-RevId: 490725959 --- .../androidx/media3/demo/transformer/TransformerActivity.java | 4 +++- .../java/androidx/media3/transformer/TransformerInternal.java | 3 +-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/demos/transformer/src/main/java/androidx/media3/demo/transformer/TransformerActivity.java b/demos/transformer/src/main/java/androidx/media3/demo/transformer/TransformerActivity.java index b11d697820..11768e551b 100644 --- a/demos/transformer/src/main/java/androidx/media3/demo/transformer/TransformerActivity.java +++ b/demos/transformer/src/main/java/androidx/media3/demo/transformer/TransformerActivity.java @@ -453,7 +453,9 @@ public final class TransformerActivity extends AppCompatActivity { "transformationStopwatch", }) private void onTransformationError(TransformationException exception) { - transformationStopwatch.stop(); + if (transformationStopwatch.isRunning()) { + transformationStopwatch.stop(); + } informationTextView.setText(R.string.transformation_error); progressViewGroup.setVisibility(View.GONE); debugFrame.removeAllViews(); diff --git a/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java b/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java index a121c027c0..2ed1550d6b 100644 --- a/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java +++ b/libraries/transformer/src/main/java/androidx/media3/transformer/TransformerInternal.java @@ -430,8 +430,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; private void handleTransformationEnded( @Nullable TransformationException transformationException) { - Util.postOrRun( - handler, + handler.post( () -> { @Nullable TransformationException releaseException = null; try {