From: Michael Snyder Date: Fri, 1 Oct 2010 17:35:30 +0000 (+0000) Subject: 2010-09-30 Ali Lakhia X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=55e3947383a45ec03e48390775fbf2699e640ec5;p=deliverable%2Fbinutils-gdb.git 2010-09-30 Ali Lakhia * fork-child.c (breakup_args): Fix crash if shell forking is disabled at compile time. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index fafee4b76f..081b642a60 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2010-09-30 Ali Lakhia + + * fork-child.c (breakup_args): Fix crash if shell forking is + disabled at compile time. + 2010-10-01 Joel Brobecker * ada-lang.c (desc_bounds): Add handling of the case where diff --git a/gdb/fork-child.c b/gdb/fork-child.c index 7b81e8f788..96885dab7d 100644 --- a/gdb/fork-child.c +++ b/gdb/fork-child.c @@ -52,7 +52,7 @@ static char *exec_wrapper; static void breakup_args (char *scratch, char **argv) { - char *cp = scratch; + char *cp = scratch, *tmp; for (;;) { @@ -68,15 +68,16 @@ breakup_args (char *scratch, char **argv) *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';