diff options
-rw-r--r-- | ext/node/ops/require.rs | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/ext/node/ops/require.rs b/ext/node/ops/require.rs index def1d9758..4f88c1913 100644 --- a/ext/node/ops/require.rs +++ b/ext/node/ops/require.rs @@ -591,12 +591,14 @@ where } } -#[op2(fast)] -pub fn op_require_break_on_next_statement(state: &mut OpState) { - let inspector = state.borrow::<Rc<RefCell<JsRuntimeInspector>>>(); - inspector - .borrow_mut() - .wait_for_session_and_break_on_next_statement() +#[op2(fast, reentrant)] +pub fn op_require_break_on_next_statement(state: Rc<RefCell<OpState>>) { + let inspector_rc = { + let state = state.borrow(); + state.borrow::<Rc<RefCell<JsRuntimeInspector>>>().clone() + }; + let mut inspector = inspector_rc.borrow_mut(); + inspector.wait_for_session_and_break_on_next_statement() } fn url_to_file_path_string(url: &Url) -> Result<String, AnyError> { |