• Benedikt Meurer's avatar
    [inspector] Add custom error dispatch machinery for debug evaluate. · 56cfdd68
    Benedikt Meurer authored
    This introduces a `V8InspectorClient::dispatchError()` callback that
    embedders can use to dispatch errors from scripts injected by DevTools
    (via debug evaluate). The idea here being that while these errors are
    technically caught by the inspector logic, the DevTools UX presents them
    just like other uncaught errors, with the exception that they don't
    trigger error handlers installed by the page. The latter can be quite
    confusing to developers, and surprising when for example testing these
    error handlers from DevTools. So this adds the foundations on the V8
    side to enable triggering error handlers for these technically caught,
    but morally uncaught, exceptions.
    
    On the Chromium side https://crrev.com/c/3560458 will implement and
    use the hook. And that CL also adds a web tests to check the behavior.
    
    Bug: chromium:1295750
    Change-Id: I945c8a9e9b4ec5705fc7f1891dcda185b04c8310
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3557234
    Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
    Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
    Commit-Queue: Yang Guo <yangguo@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#79673}
    56cfdd68
v8-inspector.h 12.7 KB