From fe77046fe475936504e4933f136af6703b5a3183 Mon Sep 17 00:00:00 2001 From: Ilya Gorbunov Date: Thu, 18 Nov 2021 12:10:20 +0300 Subject: [PATCH] KT-44089 Try to use all known PlatformImplementation classes in Android Currently platform method implementations loaded are limited by the java.specification.version system property value, however that property always returns 0.9 in Android. --- .../stdlib/jvm/src/kotlin/internal/PlatformImplementations.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/stdlib/jvm/src/kotlin/internal/PlatformImplementations.kt b/libraries/stdlib/jvm/src/kotlin/internal/PlatformImplementations.kt index 09c6518050c..950ea19d139 100644 --- a/libraries/stdlib/jvm/src/kotlin/internal/PlatformImplementations.kt +++ b/libraries/stdlib/jvm/src/kotlin/internal/PlatformImplementations.kt @@ -49,7 +49,7 @@ internal open class PlatformImplementations { @JvmField internal val IMPLEMENTATIONS: PlatformImplementations = run { val version = getJavaVersion() - if (version >= 0x10008) { + if (version >= 0x10008 || version < 0x10000) { try { return@run castToBaseType(Class.forName("kotlin.internal.jdk8.JDK8PlatformImplementations").newInstance()) } catch (e: ClassNotFoundException) { } @@ -58,7 +58,7 @@ internal val IMPLEMENTATIONS: PlatformImplementations = run { } catch (e: ClassNotFoundException) { } } - if (version >= 0x10007) { + if (version >= 0x10007 || version < 0x10000) { try { return@run castToBaseType(Class.forName("kotlin.internal.jdk7.JDK7PlatformImplementations").newInstance()) } catch (e: ClassNotFoundException) { }