diff options
author | Ricki Hirner <hirner@bitfire.at> | 2022-09-18 14:45:25 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-18 14:45:25 +0300 |
commit | 819f46883e583bf8a54756bb53017d1d47b73fa7 (patch) | |
tree | a2989c776d9dc424dcd7b3325169df49127ac82f | |
parent | 73a3c70c3b4e62348efd882aad8798812db6ad37 (diff) |
Fix color parsing for empty strings (see #62) (#63)
* Fix color parsing for empty strings
* Use generic exception, add test
Co-authored-by: Moritz Jordan <jomority@openotter.com>
-rw-r--r-- | src/androidTest/java/at/bitfire/ical4android/Css3ColorTest.kt | 3 | ||||
-rw-r--r-- | src/main/java/at/bitfire/ical4android/Css3Color.kt | 4 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/androidTest/java/at/bitfire/ical4android/Css3ColorTest.kt b/src/androidTest/java/at/bitfire/ical4android/Css3ColorTest.kt index b89dad8..04080b4 100644 --- a/src/androidTest/java/at/bitfire/ical4android/Css3ColorTest.kt +++ b/src/androidTest/java/at/bitfire/ical4android/Css3ColorTest.kt @@ -21,6 +21,9 @@ class Css3ColorTest { // ARGB value assertEquals(0xffffff00.toInt(), Css3Color.colorFromString("#ffffff00")) + // empty value + assertNull(Css3Color.colorFromString("")) + // invalid value assertNull(Css3Color.colorFromString("DoesNotExist")) } diff --git a/src/main/java/at/bitfire/ical4android/Css3Color.kt b/src/main/java/at/bitfire/ical4android/Css3Color.kt index f6190a0..8a5443f 100644 --- a/src/main/java/at/bitfire/ical4android/Css3Color.kt +++ b/src/main/java/at/bitfire/ical4android/Css3Color.kt @@ -176,7 +176,8 @@ enum class Css3Color(val argb: Int) { fromString(color)?.argb ?: try { Color.parseColor(color) - } catch(e: IllegalArgumentException) { + } catch(e: Exception) { + Ical4Android.log.warning("Invalid color value: $color") null } @@ -190,6 +191,7 @@ enum class Css3Color(val argb: Int) { try { valueOf(name.lowercase()) } catch (e: IllegalArgumentException) { + Ical4Android.log.warning("Invalid color name: $name") null } |