Call fallible_ptrace instead of ptrace_if_stopped in AutoRemoteSyscalls::ignore_signal because this is just for logging and we don't actually care if the tracee is not stopped
diff --git a/src/AutoRemoteSyscalls.cc b/src/AutoRemoteSyscalls.cc
index 854c785..533bb1a 100644
--- a/src/AutoRemoteSyscalls.cc
+++ b/src/AutoRemoteSyscalls.cc
@@ -329,10 +329,12 @@
return true;
}
siginfo_t siginfo;
- if (t->ptrace_if_stopped(PTRACE_GETSIGINFO, nullptr, &siginfo)) {
- ASSERT(t, false) << "Unexpected signal " << siginfo;
- } else {
+ errno = 0;
+ t->fallible_ptrace(PTRACE_GETSIGINFO, nullptr, &siginfo);
+ if (errno) {
ASSERT(t, false) << "Unexpected signal " << signal_name(sig);
+ } else {
+ ASSERT(t, false) << "Unexpected signal " << siginfo;
}
return false;
}