summaryrefslogtreecommitdiff
path: root/gcc/cppspec.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cppspec.c')
-rw-r--r--gcc/cppspec.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/cppspec.c b/gcc/cppspec.c
index 4ab043d2158..01273054005 100644
--- a/gcc/cppspec.c
+++ b/gcc/cppspec.c
@@ -194,7 +194,8 @@ lang_specific_driver (errfn, in_argc, in_argv, in_added_libraries)
if (new_argc == argc)
return;
- new_argv = (char **) xmalloc (new_argc * sizeof(char *));
+ /* One more slot for a terminating null. */
+ new_argv = (char **) xmalloc ((new_argc + 1) * sizeof(char *));
new_argv[0] = argv[0];
j = 1;
@@ -218,8 +219,9 @@ lang_specific_driver (errfn, in_argc, in_argv, in_added_libraries)
}
if (read_stdin)
- new_argv[j] = "-";
+ new_argv[j++] = "-";
+ new_argv[j] = NULL;
*in_argc = new_argc;
*in_argv = new_argv;
}