Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 16b731767043e9593b5a3589cc716612547a5c17
      
https://github.com/WebKit/WebKit/commit/16b731767043e9593b5a3589cc716612547a5c17
  Author: Ahmad Saleem <[email protected]>
  Date:   2026-07-13 (Mon, 13 Jul 2026)

  Changed paths:
    M LayoutTests/inspector/dom-debugger/dom-breakpoints-expected.txt
    M LayoutTests/inspector/dom-debugger/dom-breakpoints.html
    M Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js

  Log Message:
  -----------
  Web Inspector: removing a DOM breakpoint deletes sibling breakpoints that 
share the same URL
https://bugs.webkit.org/show_bug.cgi?id=319243
rdar://182090330

Reviewed by Devin Rousso.

`_domBreakpointURLMap` is a `Multimap` keyed by frame URL, so every DOM
breakpoint on a page is stored under the same key. `removeDOMBreakpoint`
called `_domBreakpointURLMap.delete(breakpoint.url)` with a single
argument, which `Multimap.delete` treats as "remove the entire key" —
evicting every sibling breakpoint sharing that URL from the map.

The surviving breakpoints stayed attached for the current page, but the
URL map is what re-resolves breakpoints to nodes on navigation (via
`_speculativelyResolveDOMBreakpointsForURL` and `_nodeInserted`), so
after a reload the siblings silently failed to re-resolve and stopped
breaking.

Pass the breakpoint as the second argument so only that value is
removed, matching the two-arg `_domBreakpointFrameIdentifierMap.delete`
form used just below.

* LayoutTests/inspector/dom-debugger/dom-breakpoints-expected.txt:
* LayoutTests/inspector/dom-debugger/dom-breakpoints.html:
* Source/WebInspectorUI/UserInterface/Controllers/DOMDebuggerManager.js:
(WI.DOMDebuggerManager.prototype.removeDOMBreakpoint):

Canonical link: https://commits.webkit.org/317054@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to