Skip to content

Conversation

@tomtomjhj
Copy link
Contributor

Problem:
The sign id returned by sign_place() is buffer-local, so the ids of
signs in different buffers can be the same. Due to this, set_breakpoint
with condition overrides condition of another breakpoint in another
buffer.

Solution:

  • Maintain mapping of buffer → sign id → breakpoint.
  • Also fix other issues with wrong fields of bp.

Problem:
The sign id returned by sign_place() is buffer-local, so the ids of
signs in different buffers can be the same. Due to this, set_breakpoint
with condition overrides condition of another breakpoint in another
buffer.

Solution:
* Maintain mapping of buffer → sign id → breakpoint.
* Also fix other issues with wrong fields of bp.
@tomtomjhj
Copy link
Contributor Author

lint failure seems unrelated to this pr

@mfussenegger mfussenegger merged commit ed1db10 into mfussenegger:master Aug 19, 2025
3 of 4 checks passed
@mfussenegger
Copy link
Owner

Thanks, nice catch. A bit surprised that I haven't noticed this for so long.

@tomtomjhj tomtomjhj deleted the sign-bufnr branch August 19, 2025 23:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants