Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Delay setting error handlers until debugger is connected #373

Merged
merged 1 commit into from
Jun 12, 2024

Conversation

kmagiera
Copy link
Member

This PR changes the way we override error handlers in our RN runtime.

Before, we'd register error handlers in initialization code, now we only do that once the debugger is connected.

The issue with the old approach was that in the case when there is some uncaught exception in the init phase, it'd go into our custom handler that'd stop the debugger. In that case we'd never be able to dispatch app-ready and hence the debugger would never connect.

In this PR we use CDP Runtime.evaluate to call new global handler RNIDE_onDebuggerConnected that is then used by the runtime to install error handlers. With this change in, initialization errors won't be caught in the debugger but they also won't freeze the app entirely w/o any clue.

Copy link

vercel bot commented Jun 12, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
react-native-ide ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jun 12, 2024 9:43pm

@kmagiera kmagiera merged commit 8c633f9 into main Jun 12, 2024
3 checks passed
@kmagiera kmagiera deleted the kmagiera/delay-error-handlers-registration branch June 12, 2024 21:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant