* 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:
parent
493424b108
commit
bb6247c6b2
@ -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++
|
||||
|
@ -129,7 +129,8 @@ set_demangling_command (ignore, from_tty, c)
|
||||
{
|
||||
free (current_demangling_style_string);
|
||||
current_demangling_style_string =
|
||||
strdup (dem -> demangling_style_name);
|
||||
savestring (dem -> demangling_style_name,
|
||||
strlen (dem -> demangling_style_name));
|
||||
}
|
||||
}
|
||||
if (current_demangling_style == unknown_demangling)
|
||||
@ -139,7 +140,8 @@ set_demangling_command (ignore, from_tty, c)
|
||||
one as the default. */
|
||||
current_demangling_style = demanglers[0].demangling_style;
|
||||
current_demangling_style_string =
|
||||
strdup (demanglers[0].demangling_style_name);
|
||||
savestring (demanglers[0].demangling_style_name,
|
||||
strlen (demanglers[0].demangling_style_name));
|
||||
warning ("`%s' style demangling chosen as the default.\n",
|
||||
current_demangling_style_string);
|
||||
}
|
||||
@ -156,7 +158,7 @@ set_demangling_style (style)
|
||||
{
|
||||
free (current_demangling_style_string);
|
||||
}
|
||||
current_demangling_style_string = strdup (style);
|
||||
current_demangling_style_string = savestring (style, strlen (style));
|
||||
set_demangling_command ((char *) NULL, 0);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user