You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.1 KiB
37 lines
1.1 KiB
commit bb195224acc14724e9fc2dbaa8d0b20b72ace79b |
|
Author: Dmitry V. Levin <ldv@altlinux.org> |
|
Date: Sun Dec 17 23:49:46 2017 +0000 |
|
|
|
elf: do not substitute dst in $LD_LIBRARY_PATH twice [BZ #22627] |
|
|
|
Index: glibc-2.17-c758a686/elf/dl-load.c |
|
=================================================================== |
|
--- glibc-2.17-c758a686.orig/elf/dl-load.c |
|
+++ glibc-2.17-c758a686/elf/dl-load.c |
|
@@ -829,25 +829,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 (__builtin_expect (cnt == 0, 1)) |
|
- 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. */
|
|
|