Skip to content

Conversation

@OrfeasZ
Copy link

@OrfeasZ OrfeasZ commented Feb 3, 2026

Metro passes absolute paths to the moduleId factory. This means that on Windows (where \ is used as a path separator), the worklet subpath check (which expects a / separator) failed, so worklets didn't end up getting the expected moduleId, resulting in a crash in the hermes VM.

Still not sure why this resulted in a crash instead of a runtime error (possibly broke some assumption in native bundle mode code?), but this at least fixes this in this use case by normalizing the path prior to the check.

Metro passes absolute paths to the moduleId factory. This means that
on Windows, the worklet subpath check failed, so worklets didn't end up
getting the expected moduleId, resulting in a crash in the hermes VM.

Still not sure why this resulted in a crash instead of a runtime error,
but this at least fixes this in this use case by normalizing the path
prior to the check.
@tjzel tjzel self-assigned this Feb 3, 2026
@tjzel tjzel self-requested a review February 3, 2026 15:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants