Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [PATCH] Fix potential NULL pointer dereference
@ 2016-10-24 21:52 Luis Machado
  2016-10-24 22:26 ` Pedro Alves
  0 siblings, 1 reply; 4+ messages in thread
From: Luis Machado @ 2016-10-24 21:52 UTC (permalink / raw)
  To: gdb-patches

This patch addresses a potential NULL pointer dereference when we try to
duplicate a string. The input pointer can be NULL and that may lead to
crashes. We just use a statically-allocated string to prevent bad things from
happening.

gdb/ChangeLog:
2016-10-24  Luis Machado  <lgustavo@codesourcery.com>

	* exec.c (exec_file_locate_attach): Prevent NULL pointer dereference
	when duplicating a string.
---
 gdb/ChangeLog |  5 +++++
 gdb/exec.c    | 11 +++++++++--
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 388cc1f..43175ff 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
 2016-10-24  Luis Machado  <lgustavo@codesourcery.com>
 
+	* exec.c (exec_file_locate_attach): Prevent NULL pointer dereference
+	when duplicating a string.
+
+2016-10-24  Luis Machado  <lgustavo@codesourcery.com>
+
 	* exec.c (exception_print_same): Fix string comparison to use
 	statically-allocated ones.
 
diff --git a/gdb/exec.c b/gdb/exec.c
index 67ecc63..5eeac44 100644
--- a/gdb/exec.c
+++ b/gdb/exec.c
@@ -221,13 +221,20 @@ exec_file_locate_attach (int pid, int defer_bp_reset, int from_tty)
     }
   CATCH (err, RETURN_MASK_ERROR)
     {
+      const char *msg;
+
       if (err.message != NULL)
-	warning ("%s", err.message);
+	{
+	  warning ("%s", err.message);
+	  msg = err.message;
+	}
+      else
+	msg = "";
 
       prev_err = err;
 
       /* Save message so it doesn't get trashed by the catch below.  */
-      prev_err.message = xstrdup (err.message);
+      prev_err.message = xstrdup (msg);
     }
   END_CATCH
 
-- 
2.7.4


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-10-24 22:53 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-24 21:52 [PATCH] Fix potential NULL pointer dereference Luis Machado
2016-10-24 22:26 ` Pedro Alves
2016-10-24 22:39   ` Luis Machado
2016-10-24 22:53     ` Luis Machado

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox