From 694c31131335b84ee5bc8b03c4773a3542258aa9 Mon Sep 17 00:00:00 2001 From: fankesyooni Date: Thu, 5 Jan 2023 19:28:22 +0800 Subject: [PATCH] Modify make invokeOriginalMember wrapped with try-catch in YukiBridgeFactory --- .../hook/xposed/bridge/factory/YukiBridgeFactory.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/yukihookapi/src/api/kotlin/com/highcapable/yukihookapi/hook/xposed/bridge/factory/YukiBridgeFactory.kt b/yukihookapi/src/api/kotlin/com/highcapable/yukihookapi/hook/xposed/bridge/factory/YukiBridgeFactory.kt index 061fd3f8..18201fef 100644 --- a/yukihookapi/src/api/kotlin/com/highcapable/yukihookapi/hook/xposed/bridge/factory/YukiBridgeFactory.kt +++ b/yukihookapi/src/api/kotlin/com/highcapable/yukihookapi/hook/xposed/bridge/factory/YukiBridgeFactory.kt @@ -128,7 +128,11 @@ internal object YukiHookHelper { */ internal fun invokeOriginalMember(member: Member?, instance: Any?, vararg args: Any?) = if (YukiHookBridge.hasXposedBridge && YukiHookedMembers.hookedMembers.any { it.member.toString() == member.toString() }) - member?.let { XposedBridge.invokeOriginalMethod(it, instance, args) } + member?.let { + runCatching { XposedBridge.invokeOriginalMethod(it, instance, args) } + .onFailure { yLoggerE(msg = "Invoke original Member [$member] failed", e = it) } + .getOrNull() + } else null /**