Have VG_(is_in_syscall) return False if no syscall was done yet.

As when no syscall was done yet, the syscallInfo pointer is still null,
we return False if this is null, rather than SEGV due to null ptr.

This can at least happen when reporting the scheduler status before
the first syscall was done.
This commit is contained in:
Philippe Waroquiers 2019-09-10 22:47:58 +02:00
parent 2fe37c05bb
commit 53cceb2ac2

View File

@ -1694,7 +1694,7 @@ void VG_(clear_syscallInfo) ( ThreadId tid )
Bool VG_(is_in_syscall) ( ThreadId tid )
{
vg_assert(tid >= 0 && tid < VG_N_THREADS);
return (syscallInfo[tid].status.what != SsIdle);
return (syscallInfo && syscallInfo[tid].status.what != SsIdle);
}
Word VG_(is_in_syscall_no) (ThreadId tid )