Skip to content

Commit 07197f6

Browse files
committed
avoid ChildCancelledException Kotlin/kotlinx.coroutines#2550
(cherry picked from commit 505ba3c)
1 parent 9dee701 commit 07197f6

File tree

2 files changed

+8
-10
lines changed

2 files changed

+8
-10
lines changed

Diff for: firebase-common/src/commonMain/kotlin/dev/gitlive/firebase/extensions.kt

+2-4
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@ import kotlinx.coroutines.channels.SendChannel
66

77
//workaround for https://github.com/Kotlin/kotlinx.coroutines/issues/974
88
@ExperimentalCoroutinesApi
9-
fun <E> SendChannel<E>.safeOffer(element: E) = try {
10-
!isClosedForSend && offer(element)
11-
} catch (e : ClosedSendChannelException) {
12-
false
9+
fun <E> SendChannel<E>.safeOffer(element: E): Boolean {
10+
return runCatching { !isClosedForSend && offer(element) }.getOrDefault(false)
1311
}

Diff for: gradle.properties

+6-6
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ android.useAndroidX=true
66
testOptions.unitTests.isIncludeAndroidResources = true
77

88
# Versions:
9-
firebase-app.version=0.4.10
10-
firebase-auth.version=0.4.10
11-
firebase-common.version=0.4.10
12-
firebase-database.version=0.4.10
13-
firebase-firestore.version=0.4.10
14-
firebase-functions.version=0.4.10
9+
firebase-app.version=0.4.11
10+
firebase-auth.version=0.4.11
11+
firebase-common.version=0.4.11
12+
firebase-database.version=0.4.11
13+
firebase-firestore.version=0.4.11
14+
firebase-functions.version=0.4.11

0 commit comments

Comments
 (0)