From 76a60725825777c9deb286d7af3f7063e51c5452 Mon Sep 17 00:00:00 2001 From: PalmDevs Date: Tue, 7 Apr 2026 22:35:27 +0700 Subject: [PATCH] fix(lib/modules/metro): run initialized subscriptions after modifying flags --- lib/modules/src/metro/patches.ts | 7 +------ lib/modules/src/metro/runtime.ts | 3 +++ 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/lib/modules/src/metro/patches.ts b/lib/modules/src/metro/patches.ts index 7f9c706..c574ac9 100644 --- a/lib/modules/src/metro/patches.ts +++ b/lib/modules/src/metro/patches.ts @@ -8,10 +8,7 @@ import { metroImportDefault, metroRequire, } from './runtime' -import { - executeInitializeSubscriptions, - executeRequireSubscriptions, -} from './subscriptions/_internal' +import { executeRequireSubscriptions } from './subscriptions/_internal' import type { Metro, RevengeMetro } from '../types' export let mInitializingId: Metro.ModuleID | undefined @@ -129,8 +126,6 @@ function handleFactoryCall( cacheBlacklistedModule(mInitializingId) } } - - executeInitializeSubscriptions(mInitializingId, exports) } catch (e) { if (__DEV__) { callBridgeMethodSync('revenge.alertError', [ diff --git a/lib/modules/src/metro/runtime.ts b/lib/modules/src/metro/runtime.ts index b838d53..efe8282 100644 --- a/lib/modules/src/metro/runtime.ts +++ b/lib/modules/src/metro/runtime.ts @@ -6,6 +6,7 @@ */ import { mList } from './patches' +import { executeInitializeSubscriptions } from './subscriptions/_internal' import type { Metro } from '../types' export const Initialized = 1 << 0 @@ -41,6 +42,8 @@ export const metroRequire = (moduleId => { mod.flags = (flags & NotInitializedOrInitializingMask) | Initialized + executeInitializeSubscriptions(moduleId, moduleObject.exports) + return moduleObject.exports } catch (e) { mod.flags = (flags & NotInitializedOrInitializingMask) | HasError