* buildsym.c (start_subfile, patch_subfile_names), demangle.c

(set_demangling_style, set_demangling_command): Use savestring not
	strdup.  We were not dealing properly with a NULL return from
	strdup, and were not declaring strdup (the system header may or
	may not have it).
This commit is contained in:
Jim Kingdon
1994-03-26 04:26:26 +00:00
parent 493424b108
commit bb6247c6b2
2 changed files with 9 additions and 6 deletions

View File

@@ -405,8 +405,9 @@ start_subfile (name, dirname)
current_subfile = subfile;
/* Save its name and compilation directory name */
subfile->name = (name == NULL)? NULL : strdup (name);
subfile->dirname = (dirname == NULL) ? NULL : strdup (dirname);
subfile->name = (name == NULL) ? NULL : savestring (name, strlen (name));
subfile->dirname =
(dirname == NULL) ? NULL : savestring (dirname, strlen (dirname));
/* Initialize line-number recording for this subfile. */
subfile->line_vector = NULL;
@@ -479,7 +480,7 @@ patch_subfile_names (subfile, name)
&& subfile->name[strlen(subfile->name)-1] == '/')
{
subfile->dirname = subfile->name;
subfile->name = strdup (name);
subfile->name = savestring (name, strlen (name));
/* Default the source language to whatever can be deduced from
the filename. If nothing can be deduced (such as for a C/C++