From 51750acd087cc20ae3f72393fa897d9e3059c65d Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Thu, 24 Nov 2016 10:00:20 +0000 Subject: [PATCH] Fix snafu parsing $ORIGIN. PR ld/20858 * emultempl/elf32.em (_search_needed): Allow for path separator and terminating NUL byte when allocating space for new $ORIGIN path. --- ld/ChangeLog | 7 +++++++ ld/emultempl/elf32.em | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index 9c5eb40..0747409 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,10 @@ +2016-11-24 Nick Clifton + + PR ld/20858 + * emultempl/elf32.em (_search_needed): Allow for path separator + and terminating NUL byte when allocating space for new $ORIGIN + path. + 2016-11-23 Nick Clifton * testsuite/ld-arm/vxworks2.sd: Update expected readelf output. diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em index 8c63638..f5cb3ee 100644 --- a/ld/emultempl/elf32.em +++ b/ld/emultempl/elf32.em @@ -585,7 +585,7 @@ gld${EMULATION_NAME}_search_needed (const char *path, { char * current_dir = getpwd (); - freeme = xmalloc (strlen (replacement) + strlen (current_dir)); + freeme = xmalloc (strlen (replacement) + strlen (current_dir) + 2); sprintf (freeme, "%s/%s", current_dir, replacement); } -- 2.7.4