20#include "gdbsupport/common-defs.h"
24#include "gdbsupport/gdb_wait.h"
25#include "gdbsupport/eintr.h"
32 if (WIFSTOPPED (status))
35 return string_printf (
"%s - %s (stopped at syscall)",
36 strsigno (SIGTRAP), strsignal (SIGTRAP));
38 return string_printf (
"%s - %s (stopped)",
39 strsigno (WSTOPSIG (status)),
40 strsignal (WSTOPSIG (status)));
42 else if (WIFSIGNALED (status))
43 return string_printf (
"%s - %s (terminated)",
44 strsigno (WTERMSIG (status)),
45 strsignal (WTERMSIG (status)));
47 return string_printf (
"%d (exited)", WEXITSTATUS (status));
55 return gdb::handle_eintr (-1, ::waitpid, pid, status, flags);
int my_waitpid(int pid, int *status, int flags)
std::string status_to_str(int status)