Fix potential use-after-free bugs.
ld/ChangeLog: * plugin.c (add_input_file): Take copy of input string. (add_input_library): Likewise. (set_extra_library_path): Likewise.
This commit is contained in:
parent
c3842ce50e
commit
d4cb7acdd8
|
@ -1,3 +1,9 @@
|
|||
2010-10-15 Dave Korn <dave.korn.cygwin@gmail.com>
|
||||
|
||||
* plugin.c (add_input_file): Take copy of input string.
|
||||
(add_input_library): Likewise.
|
||||
(set_extra_library_path): Likewise.
|
||||
|
||||
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
|
||||
|
||||
Apply LD plugin patch series (part 6/6).
|
||||
|
|
|
@ -433,7 +433,8 @@ static enum ld_plugin_status
|
|||
add_input_file (const char *pathname)
|
||||
{
|
||||
ASSERT (called_plugin);
|
||||
if (!lang_add_input_file (pathname, lang_input_file_is_file_enum, NULL))
|
||||
if (!lang_add_input_file (xstrdup (pathname), lang_input_file_is_file_enum,
|
||||
NULL))
|
||||
return LDPS_ERR;
|
||||
return LDPS_OK;
|
||||
}
|
||||
|
@ -443,7 +444,8 @@ static enum ld_plugin_status
|
|||
add_input_library (const char *pathname)
|
||||
{
|
||||
ASSERT (called_plugin);
|
||||
if (!lang_add_input_file (pathname, lang_input_file_is_l_enum, NULL))
|
||||
if (!lang_add_input_file (xstrdup (pathname), lang_input_file_is_l_enum,
|
||||
NULL))
|
||||
return LDPS_ERR;
|
||||
return LDPS_OK;
|
||||
}
|
||||
|
@ -454,7 +456,7 @@ static enum ld_plugin_status
|
|||
set_extra_library_path (const char *path)
|
||||
{
|
||||
ASSERT (called_plugin);
|
||||
ldfile_add_library_path (path, FALSE);
|
||||
ldfile_add_library_path (xstrdup (path), FALSE);
|
||||
return LDPS_OK;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue