From 5125926f82b5164af90d3d7990f2839207c40925 Mon Sep 17 00:00:00 2001 From: Laurent Date: Mon, 15 Apr 2019 11:22:14 +0200 Subject: [PATCH] Fixes crash when setting empty value on net result --- .../android/model/realm/Session.kt | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt b/app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt index 486aca1b..0cc949d8 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt @@ -759,7 +759,13 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat } SessionRow.BUY_IN -> { val localResult = if (this.result != null) this.result as Result else realm.createObject(Result::class.java) - localResult.buyin = value as Double? + + if (value == null) { + localResult.buyin = null + } else { + localResult.buyin = (value as String).toDouble() + } + this.result = localResult this.updateRowRepresentation() } @@ -776,7 +782,13 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat } SessionRow.NET_RESULT -> { this.result?.let { result -> - result.netResult = (value as String).toDouble() + + if (value == null) { + result.netResult = null + } else { + result.netResult = (value as String).toDouble() + } + } } SessionRow.COMMENT -> comment = value as String? ?: "" @@ -819,7 +831,12 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat SessionRow.TABLE_SIZE -> tableSize = value as Int? SessionRow.TIPS -> { val localResult = if (result != null) result as Result else realm.createObject(Result::class.java) - localResult.tips = value as Double? + if (value == null) { + localResult.tips = null + } else { + localResult.tips = (value as String).toDouble() + } + result = localResult } SessionRow.TOURNAMENT_NAME -> tournamentName = value as TournamentName?