INNER CODE UNIT · Kotlin
depth
NexAlloy/NexAlloy · app/src/main/java/io/github/nexalloy/Helper.kt:133
val depth = ((innerDepth.get() ?: 0) - 1).coerceAtLeast(0)
innerDepth.set(depth)
try {
after(ScopedHookParam(outerParam, depth), it)
} finally {
if (depth == 0) innerDepth.remove()
}
}
}
}
val outerParam: ThreadLocal<MethodHookParam> = ThreadLocal<MethodHookParam>()
val innerDepth: ThreadLocal<Int> = ThreadLocal.withInitial { 0 }
override fun beforeHookedMethod(param: MethodHookParam) {
outerParam.set(param)
innerDepth.set(0)