Fix "catch syscall"

Simon pointed out that some recent patches of mine broke "catch
syscall".  Apparently I forgot to finish the conversion of this code
when removing init_catchpoint.  This patch completes the conversion
and fixes the bug.
This commit is contained in:
Tom Tromey
2022-05-07 10:07:36 -06:00
parent 8f3babfaf8
commit c5eab52dba

View File

@@ -35,10 +35,11 @@
/* An instance of this type is used to represent a syscall
catchpoint. */
struct syscall_catchpoint : public breakpoint
struct syscall_catchpoint : public catchpoint
{
syscall_catchpoint (struct gdbarch *gdbarch, std::vector<int> &&calls)
: breakpoint (gdbarch, bp_catchpoint),
syscall_catchpoint (struct gdbarch *gdbarch, bool tempflag,
std::vector<int> &&calls)
: catchpoint (gdbarch, tempflag, nullptr),
syscalls_to_be_caught (std::move (calls))
{
}
@@ -354,7 +355,7 @@ create_syscall_event_catchpoint (int tempflag, std::vector<int> &&filter)
struct gdbarch *gdbarch = get_current_arch ();
std::unique_ptr<syscall_catchpoint> c
(new syscall_catchpoint (gdbarch, std::move (filter)));
(new syscall_catchpoint (gdbarch, tempflag, std::move (filter)));
install_breakpoint (0, std::move (c), 1);
}