[all-commits] [llvm/llvm-project] 05badc: [lldb/Reproducers] Fix API boundary tracking bug

Jonas Devlieghere via All-commits all-commits at lists.llvm.org
Thu Jan 30 11:24:11 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 05badc60b7f4dff3c1b9efd5d7eea13979e255db
      https://github.com/llvm/llvm-project/commit/05badc60b7f4dff3c1b9efd5d7eea13979e255db
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2020-01-30 (Thu, 30 Jan 2020)

  Changed paths:
    M lldb/include/lldb/Utility/ReproducerInstrumentation.h

  Log Message:
  -----------
  [lldb/Reproducers] Fix API boundary tracking bug

When recording the result from the LLDB_RECORD_RESULT macro, we need to
update the boundary so we capture the copy constructor. However, when
called to record the this pointer of the (copy) constructor itself, the
boundary should not be toggled, because it is called from the
LLDB_RECORD_CONSTRUCTOR macro, which might be followed by other API
calls.

This manifested itself as an object encountered during replay that we
hadn't seen before. The index-to-object mapping would return a nullptr
and lldb would crash.




More information about the All-commits mailing list