Skip to content

Commit

Permalink
KTOR-1647 Avoid reflection access for SensitivityWatchEventModifier o…
Browse files Browse the repository at this point in the history
…n Android (#3219)
  • Loading branch information
e5l committed Oct 25, 2022
1 parent 34e9d51 commit afeb5ce
Showing 1 changed file with 10 additions and 6 deletions.
Expand Up @@ -65,10 +65,14 @@ internal fun Class<*>.takeIfNotFacade(): KClass<*>? =
if (getAnnotation(Metadata::class.java)?.takeIf { it.kind == 1 } != null) kotlin else null

@Suppress("FunctionName")
internal fun get_com_sun_nio_file_SensitivityWatchEventModifier_HIGH(): WatchEvent.Modifier? = try {
val modifierClass = Class.forName("com.sun.nio.file.SensitivityWatchEventModifier")
val field = modifierClass.getField("HIGH")
field.get(modifierClass) as? WatchEvent.Modifier
} catch (cause: Exception) {
null
internal fun get_com_sun_nio_file_SensitivityWatchEventModifier_HIGH(): WatchEvent.Modifier? {
if (System.getenv("ANDROID_DATA") != null) return null

return try {
val modifierClass = Class.forName("com.sun.nio.file.SensitivityWatchEventModifier")
val field = modifierClass.getField("HIGH")
field.get(modifierClass) as? WatchEvent.Modifier
} catch (cause: Throwable) {
null
}
}

0 comments on commit afeb5ce

Please sign in to comment.