diff options
author | pfg <pfg@FreeBSD.org> | 2015-01-28 02:25:48 +0000 |
---|---|---|
committer | pfg <pfg@FreeBSD.org> | 2015-01-28 02:25:48 +0000 |
commit | 70c2ff18b9e8262f73e2079ac2b27b74b6679e42 (patch) | |
tree | 87f8af7c139172c71055435636aa029dbba8066d | |
parent | 67407ee0dfc6c00bbb3a045707e702fbb1e14293 (diff) | |
download | FreeBSD-src-70c2ff18b9e8262f73e2079ac2b27b74b6679e42.zip FreeBSD-src-70c2ff18b9e8262f73e2079ac2b27b74b6679e42.tar.gz |
MFC r277608, r277656, r277659:
Small upstream fixes for GDB.
GDB: Fix memset thinkos.
2005-03-25 Anthony Green <green@redhat.com>
* remote.c (remote_store_registers): Fix memset usage.
* std-regs.c (value_of_builtin_frame_reg): Ditto.
(value_of_builtin_frame_fp_reg): Ditto.
(value_of_builtin_frame_reg): Ditto.
Reported by: Dirk Engling
gdb: Add missing break statements
2004-05-21 Jim Blandy <jimb@redhat.com>
* dwarf2expr.c (execute_stack_op): Add 'break' statements after
cases for DW_OP_div and DW_OP_shr. (Thanks to Reva Cuthbertson.)
GDB: Replace use of sprintf.
2005-03-17 Mark Kettenis <kettenis@gnu.org>
* corelow.c (get_core_register_section): Replace usage of sprintf
and strcpy with xstrprintf and xstrdup.
CID: 604160, 604161, 604162, 604163
CID: 1006819 1008254
-rw-r--r-- | contrib/gdb/gdb/corelow.c | 7 | ||||
-rw-r--r-- | contrib/gdb/gdb/dwarf2expr.c | 2 | ||||
-rw-r--r-- | contrib/gdb/gdb/remote.c | 2 | ||||
-rw-r--r-- | contrib/gdb/gdb/std-regs.c | 6 |
4 files changed, 10 insertions, 7 deletions
diff --git a/contrib/gdb/gdb/corelow.c b/contrib/gdb/gdb/corelow.c index 9e201cc..5517e1d 100644 --- a/contrib/gdb/gdb/corelow.c +++ b/contrib/gdb/gdb/corelow.c @@ -432,15 +432,16 @@ get_core_register_section (char *name, char *human_name, int required) { - char section_name[100]; + static char *section_name = NULL; struct bfd_section *section; bfd_size_type size; char *contents; + xfree (section_name); if (PIDGET (inferior_ptid)) - sprintf (section_name, "%s/%d", name, PIDGET (inferior_ptid)); + section_name = xstrprintf ("%s/%d", name, PIDGET (inferior_ptid)); else - strcpy (section_name, name); + section_name = xstrdup (name); section = bfd_get_section_by_name (core_bfd, section_name); if (! section) diff --git a/contrib/gdb/gdb/dwarf2expr.c b/contrib/gdb/gdb/dwarf2expr.c index 50baced..294afa0 100644 --- a/contrib/gdb/gdb/dwarf2expr.c +++ b/contrib/gdb/gdb/dwarf2expr.c @@ -575,6 +575,7 @@ execute_stack_op (struct dwarf_expr_context *ctx, unsigned char *op_ptr, break; case DW_OP_div: binop = BINOP_DIV; + break; case DW_OP_minus: binop = BINOP_SUB; break; @@ -595,6 +596,7 @@ execute_stack_op (struct dwarf_expr_context *ctx, unsigned char *op_ptr, break; case DW_OP_shr: binop = BINOP_RSH; + break; case DW_OP_shra: binop = BINOP_RSH; val1 = value_from_longest (signed_address_type (), first); diff --git a/contrib/gdb/gdb/remote.c b/contrib/gdb/gdb/remote.c index 7ff2cb8..33641ed 100644 --- a/contrib/gdb/gdb/remote.c +++ b/contrib/gdb/gdb/remote.c @@ -3463,7 +3463,7 @@ remote_store_registers (int regnum) { int i; regs = alloca (rs->sizeof_g_packet); - memset (regs, rs->sizeof_g_packet, 0); + memset (regs, 0, rs->sizeof_g_packet); for (i = 0; i < NUM_REGS + NUM_PSEUDO_REGS; i++) { struct packet_reg *r = &rs->regs[i]; diff --git a/contrib/gdb/gdb/std-regs.c b/contrib/gdb/gdb/std-regs.c index 368720d..bd134b5 100644 --- a/contrib/gdb/gdb/std-regs.c +++ b/contrib/gdb/gdb/std-regs.c @@ -61,7 +61,7 @@ value_of_builtin_frame_reg (struct frame_info *frame) val = allocate_value (builtin_type_frame_reg); VALUE_LVAL (val) = not_lval; buf = VALUE_CONTENTS_RAW (val); - memset (buf, TYPE_LENGTH (VALUE_TYPE (val)), 0); + memset (buf, 0, TYPE_LENGTH (VALUE_TYPE (val))); /* frame.base. */ if (frame != NULL) ADDRESS_TO_POINTER (builtin_type_void_data_ptr, buf, @@ -87,7 +87,7 @@ value_of_builtin_frame_fp_reg (struct frame_info *frame) struct value *val = allocate_value (builtin_type_void_data_ptr); char *buf = VALUE_CONTENTS_RAW (val); if (frame == NULL) - memset (buf, TYPE_LENGTH (VALUE_TYPE (val)), 0); + memset (buf, 0, TYPE_LENGTH (VALUE_TYPE (val))); else ADDRESS_TO_POINTER (builtin_type_void_data_ptr, buf, get_frame_base_address (frame)); @@ -105,7 +105,7 @@ value_of_builtin_frame_pc_reg (struct frame_info *frame) struct value *val = allocate_value (builtin_type_void_data_ptr); char *buf = VALUE_CONTENTS_RAW (val); if (frame == NULL) - memset (buf, TYPE_LENGTH (VALUE_TYPE (val)), 0); + memset (buf, 0, TYPE_LENGTH (VALUE_TYPE (val))); else ADDRESS_TO_POINTER (builtin_type_void_data_ptr, buf, get_frame_pc (frame)); |