commit 18f1ebe0401e61d7dfab2e759708c74b76d3f672 parent badc5aa771a4af9c9cd321a3300729b5104a3661 Author: Iván Ávalos <avalos@disroot.org> Date: Wed, 18 Jan 2023 11:05:58 -0600 [wallet] Fix crash when handling unknown error code. Diffstat:
| M | wallet/src/main/java/net/taler/wallet/backend/TalerErrorCode.kt | | | 6 | +++++- |
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/wallet/src/main/java/net/taler/wallet/backend/TalerErrorCode.kt b/wallet/src/main/java/net/taler/wallet/backend/TalerErrorCode.kt @@ -34,6 +34,8 @@ import kotlinx.serialization.encoding.Encoder @Serializable(TalerErrorCodeSerializer::class) enum class TalerErrorCode(val code: Int) { + UNKNOWN(-1), + /** * Special code to indicate success (no error). @@ -3883,7 +3885,9 @@ object TalerErrorCodeSerializer: KSerializer<TalerErrorCode> { override fun deserialize(decoder: Decoder): TalerErrorCode { val code = decoder.decodeInt() - return enumValues<TalerErrorCode>().first { code == it.code } + return enumValues<TalerErrorCode>().firstOrNull { + code == it.code + } ?: TalerErrorCode.UNKNOWN } override fun serialize(encoder: Encoder, value: TalerErrorCode) {