mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-23 11:39:26 +08:00
gdb/
* amd64-linux-nat.c (compat_siginfo_from_siginfo) (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when si_code is < 0. Check for si_code == SI_TIMER before checking for si_code < 0. gdb/gdbserver/ * linux-x86-low.c (compat_siginfo_from_siginfo) (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when si_code is < 0. Check for si_code == SI_TIMER before checking for si_code < 0.
This commit is contained in:
@ -792,8 +792,10 @@ compat_siginfo_from_siginfo (compat_siginfo_t *to, siginfo_t *from)
|
||||
to->si_errno = from->si_errno;
|
||||
to->si_code = from->si_code;
|
||||
|
||||
if (to->si_code < 0)
|
||||
if (to->si_code == SI_TIMER)
|
||||
{
|
||||
to->cpt_si_timerid = from->si_timerid;
|
||||
to->cpt_si_overrun = from->si_overrun;
|
||||
to->cpt_si_ptr = (intptr_t) from->si_ptr;
|
||||
}
|
||||
else if (to->si_code == SI_USER)
|
||||
@ -801,10 +803,10 @@ compat_siginfo_from_siginfo (compat_siginfo_t *to, siginfo_t *from)
|
||||
to->cpt_si_pid = from->si_pid;
|
||||
to->cpt_si_uid = from->si_uid;
|
||||
}
|
||||
else if (to->si_code == SI_TIMER)
|
||||
else if (to->si_code < 0)
|
||||
{
|
||||
to->cpt_si_timerid = from->si_timerid;
|
||||
to->cpt_si_overrun = from->si_overrun;
|
||||
to->cpt_si_pid = from->si_pid;
|
||||
to->cpt_si_uid = from->si_uid;
|
||||
to->cpt_si_ptr = (intptr_t) from->si_ptr;
|
||||
}
|
||||
else
|
||||
@ -846,8 +848,10 @@ siginfo_from_compat_siginfo (siginfo_t *to, compat_siginfo_t *from)
|
||||
to->si_errno = from->si_errno;
|
||||
to->si_code = from->si_code;
|
||||
|
||||
if (to->si_code < 0)
|
||||
if (to->si_code == SI_TIMER)
|
||||
{
|
||||
to->si_timerid = from->cpt_si_timerid;
|
||||
to->si_overrun = from->cpt_si_overrun;
|
||||
to->si_ptr = (void *) (intptr_t) from->cpt_si_ptr;
|
||||
}
|
||||
else if (to->si_code == SI_USER)
|
||||
@ -855,10 +859,10 @@ siginfo_from_compat_siginfo (siginfo_t *to, compat_siginfo_t *from)
|
||||
to->si_pid = from->cpt_si_pid;
|
||||
to->si_uid = from->cpt_si_uid;
|
||||
}
|
||||
else if (to->si_code == SI_TIMER)
|
||||
else if (to->si_code < 0)
|
||||
{
|
||||
to->si_timerid = from->cpt_si_timerid;
|
||||
to->si_overrun = from->cpt_si_overrun;
|
||||
to->si_pid = from->cpt_si_pid;
|
||||
to->si_uid = from->cpt_si_uid;
|
||||
to->si_ptr = (void *) (intptr_t) from->cpt_si_ptr;
|
||||
}
|
||||
else
|
||||
|
Reference in New Issue
Block a user