This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[patch] [trivial] fix NULL deref
- From: Ali Lakhia <lakhia at alumni dot utexas dot net>
- To: gdb-patches at sourceware dot org
- Date: Thu, 16 Sep 2010 10:26:27 -0700
- Subject: [patch] [trivial] fix NULL deref
Please see patch to fix NULL dereference in strchr() function. Thanks.
-Ali
--- gdb-7.1/gdb/fork-child.c 2009-12-31 23:31:31.000000000 -0800
+++ gdb-7.1/gdb/fork-child.c 2010-09-16 10:17:25.000000000 -0700
@@ -52,7 +52,7 @@
static void
breakup_args (char *scratch, char **argv)
{
- char *cp = scratch;
+ char *cp = scratch, *tmp;
for (;;)
{
@@ -68,15 +68,16 @@
*argv++ = cp;
/* Scan for next arg separator. */
- cp = strchr (cp, ' ');
- if (cp == NULL)
- cp = strchr (cp, '\t');
- if (cp == NULL)
- cp = strchr (cp, '\n');
+ tmp = strchr (cp, ' ');
+ if (tmp == NULL)
+ tmp = strchr (cp, '\t');
+ if (tmp == NULL)
+ tmp = strchr (cp, '\n');
/* No separators => end of string => break. */
- if (cp == NULL)
+ if (tmp == NULL)
break;
+ cp = tmp;
/* Replace the separator with a terminator. */
*cp++ = '\0';