summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--elf/dl-load.c20
2 files changed, 7 insertions, 19 deletions
diff --git a/ChangeLog b/ChangeLog
index 62e07123d5..d290d60a84 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2017-12-18 Dmitry V. Levin <ldv@altlinux.org>
+
+ [BZ #22627]
+ * elf/dl-load.c (_dl_init_paths): Remove _dl_dst_substitute preparatory
+ code and invocation.
+
2017-12-18 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/aarch64/start.S (_start): Handle PIC && !SHARED case.
diff --git a/elf/dl-load.c b/elf/dl-load.c
index bbd3be9e20..e7d97dcc56 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -773,25 +773,7 @@ _dl_init_paths (const char *llp)
if (llp != NULL && *llp != '\0')
{
- char *llp_tmp;
-
-#ifdef SHARED
- /* Expand DSTs. */
- size_t cnt = DL_DST_COUNT (llp, 1);
- if (__glibc_likely (cnt == 0))
- llp_tmp = strdupa (llp);
- else
- {
- /* Determine the length of the substituted string. */
- size_t total = DL_DST_REQUIRED (l, llp, strlen (llp), cnt);
-
- /* Allocate the necessary memory. */
- llp_tmp = (char *) alloca (total + 1);
- llp_tmp = _dl_dst_substitute (l, llp, llp_tmp, 1);
- }
-#else
- llp_tmp = strdupa (llp);
-#endif
+ char *llp_tmp = strdupa (llp);
/* Decompose the LD_LIBRARY_PATH contents. First determine how many
elements it has. */