[all-commits] [llvm/llvm-project] 8cd31a: [lldb/Breakpoint] Fix condition hash after updatin...

Med Ismail Bennani via All-commits all-commits at lists.llvm.org
Fri Feb 13 12:08:39 PST 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8cd31aa2c6c139b5f569b94c25462d7fcecdf7aa
      https://github.com/llvm/llvm-project/commit/8cd31aa2c6c139b5f569b94c25462d7fcecdf7aa
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Breakpoint/StopCondition.h
    A lldb/test/API/functionalities/breakpoint/update_condition/Makefile
    A lldb/test/API/functionalities/breakpoint/update_condition/TestUpdateBreakpointCondition.py
    A lldb/test/API/functionalities/breakpoint/update_condition/main.c

  Log Message:
  -----------
  [lldb/Breakpoint] Fix condition hash after updating condition text (#181409)

StopCondition::SetText was computing the hash from the moved-from text
parameter instead of the stored m_text member. After std::move(text),
the source parameter becomes empty, causing the hash to always be
computed from an empty string.

This caused breakpoint condition updates to fail silently. When a user
modified a condition (e.g., from "x == y" to "x > y"), the hash remained
unchanged. Breakpoint locations use this hash to detect when conditions
need re-evaluation, so with a stale hash they would continue using
cached state for the old condition, triggering at incorrect locations.

The patch fixes this issue by computing the hash from m_text after the
move operation, ensuring it reflects the actual stored condition text.

It also adds API test that updates a breakpoint condition and verifies
the new condition is properly evaluated.

rdar://170191229

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>



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


More information about the All-commits mailing list