diff options
author | Nick Clifton <nickc@redhat.com> | 2011-03-11 14:18:24 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2011-03-11 14:18:24 +0000 |
commit | c507f70c2fd93e7ccabc35dc7c7616895d19b287 (patch) | |
tree | 88a02558afebd1b92bd194e7e223e31d98282851 /gas/remap.c | |
parent | cb257921744098991b33b318ea0224dff05df603 (diff) | |
download | binutils-redhat-c507f70c2fd93e7ccabc35dc7c7616895d19b287.tar.gz |
* remap.c (remap_debug_filename): Always allocate a buffer for the
returned pointer.
* stabs.c (stabs_generate_asm_file): Free the pointer returned by
remap_debug_filename.
Diffstat (limited to 'gas/remap.c')
-rw-r--r-- | gas/remap.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/gas/remap.c b/gas/remap.c index 0c863fb10d..ae9b9ddaa9 100644 --- a/gas/remap.c +++ b/gas/remap.c @@ -65,8 +65,9 @@ add_debug_prefix_map (const char *arg) debug_prefix_maps = map; } -/* Perform user-specified mapping of debug filename prefixes. Return - the new name corresponding to FILENAME. */ +/* Perform user-specified mapping of debug filename prefixes. Returns + a newly allocated buffer containing the name corresponding to FILENAME. + It is the caller's responsibility to free the buffer. */ const char * remap_debug_filename (const char *filename) @@ -80,7 +81,7 @@ remap_debug_filename (const char *filename) if (filename_ncmp (filename, map->old_prefix, map->old_len) == 0) break; if (!map) - return filename; + return xstrdup (filename); name = filename + map->old_len; name_len = strlen (name) + 1; s = (char *) alloca (name_len + map->new_len); |