From: Mark Kettenis Date: Fri, 6 Aug 2004 20:51:01 +0000 (+0000) Subject: * i386obsd-tdep.c (i386obsd_sigtramp_p): Use X-Git-Tag: csl-arm-2004-q3~601 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c822af0c707258b74054d5e3bf3f8857ee32191d;p=platform%2Fupstream%2Fbinutils.git * i386obsd-tdep.c (i386obsd_sigtramp_p): Use safe_frame_unwind_memory instead of target_read_memory. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f4f7c44..a7d71c6 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,8 @@ 2004-08-05 Mark Kettenis + * i386obsd-tdep.c (i386obsd_sigtramp_p): Use + safe_frame_unwind_memory instead of target_read_memory. + * infptrace.c: Include if HAVE_SYS_FILE_H instead of !NO_SYS_FILE. [KERNEL_U_ADDR_BSD]: Don't include . diff --git a/gdb/i386obsd-tdep.c b/gdb/i386obsd-tdep.c index b2c803f..9ef868d 100644 --- a/gdb/i386obsd-tdep.c +++ b/gdb/i386obsd-tdep.c @@ -65,6 +65,7 @@ i386obsd_sigtramp_p (struct frame_info *next_frame) 0x67, 0x00, 0x00, 0x00, /* movl $SYS_sigreturn, %eax */ 0xcd, 0x80 /* int $0x80 */ }; + size_t buflen = sizeof sigreturn; char *name, *buf; /* If the function has a valid symbol name, it isn't a @@ -79,22 +80,22 @@ i386obsd_sigtramp_p (struct frame_info *next_frame) return 0; /* Allocate buffer. */ - buf = alloca (sizeof sigreturn); + buf = alloca (buflen); /* If we can't read the instructions at START_PC, return zero. */ - if (target_read_memory (start_pc + 0x0a, buf, sizeof sigreturn)) + if (!safe_frame_unwind_memory (next_frame, start_pc + 0x0a, buf, buflen)) return 0; /* Check for sigreturn(2). */ - if (memcmp (buf, sigreturn, sizeof sigreturn) == 0) + if (memcmp (buf, sigreturn, buflen) == 0) return 1; /* If we can't read the instructions at START_PC, return zero. */ - if (target_read_memory (start_pc + 0x14, buf, sizeof sigreturn)) + if (!safe_frame_unwind_memory (next_frame, start_pc + 0x14, buf, buflen)) return 0; /* Check for sigreturn(2) (again). */ - if (memcmp (buf, sigreturn, sizeof sigreturn) == 0) + if (memcmp (buf, sigreturn, buflen) == 0) return 1; return 0;