From 2d94b06fc2122bb8484f859e35bf1470692c9f6e Mon Sep 17 00:00:00 2001 From: vfsfitvnm Date: Mon, 5 Sep 2022 17:58:39 +0200 Subject: [PATCH] Fix crash when spamming taps during reordering --- .../it/vfsfitvnm/reordering/AnimatablesPool.kt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/compose-reordering/src/main/kotlin/it/vfsfitvnm/reordering/AnimatablesPool.kt b/compose-reordering/src/main/kotlin/it/vfsfitvnm/reordering/AnimatablesPool.kt index db16388..dcef4f0 100644 --- a/compose-reordering/src/main/kotlin/it/vfsfitvnm/reordering/AnimatablesPool.kt +++ b/compose-reordering/src/main/kotlin/it/vfsfitvnm/reordering/AnimatablesPool.kt @@ -21,18 +21,18 @@ class AnimatablesPool( require(size > 0) } - suspend fun acquire(): Animatable { + suspend fun acquire(): Animatable? { return mutex.withLock { - require(values.isNotEmpty()) - values.removeFirst() + if (values.isNotEmpty()) values.removeFirst() else null } } suspend fun release(animatable: Animatable) { mutex.withLock { - require(values.size < size) - animatable.snapTo(initialValue) - values.add(animatable) + if (values.size < size) { + animatable.snapTo(initialValue) + values.add(animatable) + } } } }