Skip to content

Commit 0a383b7

Browse files
committed
Add error handling for eval callback in DevTools content script
1 parent 82984e5 commit 0a383b7

File tree

1 file changed

+13
-6
lines changed
  • packages/react-devtools-extensions/src/contentScripts

1 file changed

+13
-6
lines changed

packages/react-devtools-extensions/src/contentScripts/proxy.js

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -147,12 +147,19 @@ window.addEventListener('message', event => {
147147
if (event.data?.source === 'react-devtools-content-script-eval-response') {
148148
const {requestId, response} = event.data.payload;
149149
const callback = evalRequestCallbacks.get(requestId);
150-
if (callback) {
151-
try {
152-
callback(response);
153-
} finally {
154-
evalRequestCallbacks.delete(requestId);
155-
}
150+
try {
151+
if (!callback)
152+
throw new Error(
153+
`No eval request callback for id "${requestId}" exists.`,
154+
);
155+
callback(response);
156+
} catch (e) {
157+
console.warn(
158+
'React DevTools Content Script eval response error occurred:',
159+
e,
160+
);
161+
} finally {
162+
evalRequestCallbacks.delete(requestId);
156163
}
157164
}
158165
});

0 commit comments

Comments
 (0)