Avoid blocking the main thread while waiting for app registry

This commit is contained in:
admin committed 2026-11-12 03:29:59 +08:00
1 parent 97a4fad71f
commit 176ff30ee5
4 files changed
+5 -5

No files matched your search

Binary file not shown.
+2 -2
View File
@@ -15,7 +15,7 @@
- 源码 / Source:[source/](source/)(iOS 27 Hook、内置文件浏览器集成与构建脚本 / iOS 27 hook, file-browser integration and build scripts) - 源码 / Source:[source/](source/)(iOS 27 Hook、内置文件浏览器集成与构建脚本 / iOS 27 hook, file-browser integration and build scripts)
```text ```text
3508be39187cc387c13490a1c2130087172057f931a297bad37df685d754a098 AppsManager_iOS27.ipa 98ff0ad0128b107d1f1a21583d9d6e28617f3491ba4ab923a15312fc8e0c14d4 AppsManager_iOS27.ipa
``` ```
## 功能 / Features ## 功能 / Features
@@ -94,5 +94,5 @@
## 校验 / Checksum ## 校验 / Checksum
```text ```text
3508be39187cc387c13490a1c2130087172057f931a297bad37df685d754a098 AppsManager_iOS27.ipa 98ff0ad0128b107d1f1a21583d9d6e28617f3491ba4ab923a15312fc8e0c14d4 AppsManager_iOS27.ipa
``` ```
+1 -1
View File
@@ -1 +1 @@
3508be39187cc387c13490a1c2130087172057f931a297bad37df685d754a098 AppsManager_iOS27.ipa 98ff0ad0128b107d1f1a21583d9d6e28617f3491ba4ab923a15312fc8e0c14d4 AppsManager_iOS27.ipa
+2 -2
View File
@@ -822,7 +822,7 @@ static BOOL WBWaitForRegistry(void)
static NSArray *WBHookAllInstalled(id self, SEL _cmd) static NSArray *WBHookAllInstalled(id self, SEL _cmd)
{ {
if (!WBRegistry.shared.ready) WBWaitForRegistry(); if (!WBRegistry.shared.ready && !NSThread.isMainThread) WBWaitForRegistry();
NSArray *proxies = WBRegistry.shared.proxies; NSArray *proxies = WBRegistry.shared.proxies;
if (WBRegistry.shared.ready && proxies.count) return proxies; if (WBRegistry.shared.ready && proxies.count) return proxies;
return gOrigAllInstalled ? gOrigAllInstalled(self, _cmd) : @[]; return gOrigAllInstalled ? gOrigAllInstalled(self, _cmd) : @[];
@@ -830,7 +830,7 @@ static NSArray *WBHookAllInstalled(id self, SEL _cmd)
static NSArray *WBHookAllApplications(id self, SEL _cmd) static NSArray *WBHookAllApplications(id self, SEL _cmd)
{ {
if (!WBRegistry.shared.ready) WBWaitForRegistry(); if (!WBRegistry.shared.ready && !NSThread.isMainThread) WBWaitForRegistry();
NSArray *proxies = WBRegistry.shared.proxies; NSArray *proxies = WBRegistry.shared.proxies;
if (WBRegistry.shared.ready && proxies.count) return proxies; if (WBRegistry.shared.ready && proxies.count) return proxies;
return gOrigAllApplications ? gOrigAllApplications(self, _cmd) : @[]; return gOrigAllApplications ? gOrigAllApplications(self, _cmd) : @[];