Always NULL terminate long option list.
This commit is contained in:
parent
24ddb29628
commit
beb2de9b61
2 changed files with 12 additions and 3 deletions
|
@ -1,3 +1,7 @@
|
|||
Thu Jul 6 17:20:58 2000 Andrew Cagney <cagney@b1.cygnus.com>
|
||||
|
||||
* as.c (parse_args): NULL terminate the long option list.
|
||||
|
||||
Tue Jul 4 14:08:28 2000 Andrew Cagney <cagney@b1.cygnus.com>
|
||||
|
||||
* config/tc-d30v.h: Include "write.h" for fixS.
|
||||
|
|
11
gas/as.c
11
gas/as.c
|
@ -425,13 +425,18 @@ parse_args (pargc, pargv)
|
|||
{"fatal-warnings", no_argument, NULL, OPTION_WARN_FATAL}
|
||||
};
|
||||
|
||||
/* Construct the option lists from the standard list and the
|
||||
target dependent list. */
|
||||
/* Construct the option lists from the standard list and the target
|
||||
dependent list. Include space for an extra NULL option and
|
||||
always NULL terminate. */
|
||||
shortopts = concat (std_shortopts, md_shortopts, (char *) NULL);
|
||||
longopts = (struct option *) xmalloc (sizeof (std_longopts) + md_longopts_size);
|
||||
longopts = (struct option *) xmalloc (sizeof (std_longopts)
|
||||
+ md_longopts_size
|
||||
+ sizeof (struct option));
|
||||
memcpy (longopts, std_longopts, sizeof (std_longopts));
|
||||
memcpy ((char *) longopts + sizeof (std_longopts),
|
||||
md_longopts, md_longopts_size);
|
||||
memset ((char *) longopts + sizeof (std_longopts) + md_longopts_size,
|
||||
0, sizeof (struct option));
|
||||
|
||||
/* Make a local copy of the old argv. */
|
||||
old_argc = *pargc;
|
||||
|
|
Loading…
Reference in a new issue