mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-01-24 12:35:55 +08:00
gdb/
Work around kgdb. * remote.c (remote_get_trace_status): New variable ex. Put remote_get_noisy_reply into TRY_CATCH. Call exception_fprintf for it.
This commit is contained in:
parent
28a0b48c48
commit
67f41397ce
@ -1,3 +1,9 @@
|
|||||||
|
2011-07-13 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
|
Work around kgdb.
|
||||||
|
* remote.c (remote_get_trace_status): New variable ex. Put
|
||||||
|
remote_get_noisy_reply into TRY_CATCH. Call exception_fprintf for it.
|
||||||
|
|
||||||
2011-07-13 Tom Tromey <tromey@redhat.com>
|
2011-07-13 Tom Tromey <tromey@redhat.com>
|
||||||
|
|
||||||
* dwarf2expr.c (execute_stack_op) <DW_OP_GNU_regval_type>: Use
|
* dwarf2expr.c (execute_stack_op) <DW_OP_GNU_regval_type>: Use
|
||||||
|
12
gdb/remote.c
12
gdb/remote.c
@ -10045,11 +10045,21 @@ remote_get_trace_status (struct trace_status *ts)
|
|||||||
char *p;
|
char *p;
|
||||||
/* FIXME we need to get register block size some other way. */
|
/* FIXME we need to get register block size some other way. */
|
||||||
extern int trace_regblock_size;
|
extern int trace_regblock_size;
|
||||||
|
volatile struct gdb_exception ex;
|
||||||
|
|
||||||
trace_regblock_size = get_remote_arch_state ()->sizeof_g_packet;
|
trace_regblock_size = get_remote_arch_state ()->sizeof_g_packet;
|
||||||
|
|
||||||
putpkt ("qTStatus");
|
putpkt ("qTStatus");
|
||||||
p = remote_get_noisy_reply (&target_buf, &target_buf_size);
|
|
||||||
|
TRY_CATCH (ex, RETURN_MASK_ERROR)
|
||||||
|
{
|
||||||
|
p = remote_get_noisy_reply (&target_buf, &target_buf_size);
|
||||||
|
}
|
||||||
|
if (ex.reason < 0)
|
||||||
|
{
|
||||||
|
exception_fprintf (gdb_stderr, ex, "qTStatus: ");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
/* If the remote target doesn't do tracing, flag it. */
|
/* If the remote target doesn't do tracing, flag it. */
|
||||||
if (*p == '\0')
|
if (*p == '\0')
|
||||||
|
Loading…
Reference in New Issue
Block a user