From 5df96a4e6e8f1521274acb5beb54063c35aeec6e Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Thu, 31 Oct 2019 16:46:16 -0600 Subject: [PATCH] Simplify print_sys_errmsg On irc, Christian pointed out that print_sys_errmsg could be simplified by avoiding alloca entirely. This patch implements this. gdb/ChangeLog 2019-11-01 Tom Tromey * utils.c (print_sys_errmsg): Simplify. Change-Id: Ic399dade274ea61b63ef0540b3a3be2f0f80160a --- gdb/ChangeLog | 4 ++++ gdb/utils.c | 7 +------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 500c4868c8f..34e332b0334 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2019-11-01 Tom Tromey + + * utils.c (print_sys_errmsg): Simplify. + 2019-11-01 Tom Tromey * gdbsupport/mingw-strerror.c (safe_strerror): Constify result. diff --git a/gdb/utils.c b/gdb/utils.c index e06eeddeeff..f7fae35729b 100644 --- a/gdb/utils.c +++ b/gdb/utils.c @@ -629,15 +629,10 @@ void print_sys_errmsg (const char *string, int errcode) { const char *err = safe_strerror (errcode); - char *combined = (char *) alloca (strlen (err) + strlen (string) + 3); - strcpy (combined, string); - strcat (combined, ": "); - strcat (combined, err); - /* We want anything which was printed on stdout to come out first, before this message. */ gdb_flush (gdb_stdout); - fprintf_unfiltered (gdb_stderr, "%s.\n", combined); + fprintf_unfiltered (gdb_stderr, "%s: %s.\n", string, err); } /* Control C eventually causes this to be called, at a convenient time. */ -- 2.30.2