|
Wireshark 4.7.0
The Wireshark network protocol analyzer
|
Set of (canonical_path, line) pairs that currently host an active regular breakpoint.
More...
Public Attributes | |
| char * | path |
| int64_t | line |
Set of (canonical_path, line) pairs that currently host an active regular breakpoint.
Used by wslua_debug_hook to early-out on lines that aren't breakpoint sites without locking debugger.mutex or walking breakpoints_array.
Rebuild rule: a mutator must call rebuild_bp_site_set_locked iff it changes whether an active breakpoint exists at a given (canonical_path, line) pair. In practice this is:
wslua_debugger_set_breakpoint (adds a row, always active),wslua_debugger_remove_breakpoint,wslua_debugger_set_breakpoint_active (flips bp->active),wslua_debugger_clear_breakpoints,WSLUA_HIT_COUNT_MODE_ONCE auto-disable inside the line hook.The condition / hit-count target / hit-count mode / log-message / log-also-pause / hit-count-reset setters intentionally do NOT rebuild — they don't move sites in or out of the set, so the slow path still finds the row by (canonical_path, line) once the membership test admits the line.
The rebuild runs under debugger.mutex, so the new set snapshot is consistent with the array changes the slow path will see on the next hook fire for the affected line.
The temporary breakpoint (Run-To-Line) is intentionally NOT in this set — it's checked separately at the bottom of the hook.
| int64_t bp_site_key_t::line |
1-based line number.
| char* bp_site_key_t::path |
Canonical file path, owned by this entry.