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.
32 lines
971 B
32 lines
971 B
7 years ago
|
From 9317ea653afc26402387cac67042f9890af6add2 Mon Sep 17 00:00:00 2001
|
||
|
From: Bram <bug_rh@spam.wizbit.be>
|
||
|
Date: Thu, 18 Apr 2013 16:50:49 +0200
|
||
|
Subject: [PATCH] Fix segmentation fault when LD_LIBRARY_PATH contains only
|
||
|
non-existings paths
|
||
|
|
||
|
---
|
||
|
ChangeLog | 6 ++++++
|
||
|
NEWS | 18 +++++++++---------
|
||
|
elf/dl-load.c | 6 +++---
|
||
|
3 files changed, 18 insertions(+), 12 deletions(-)
|
||
|
|
||
|
diff --git a/elf/dl-load.c b/elf/dl-load.c
|
||
|
index 73174aa..41b91fc 100644
|
||
|
--- a/elf/dl-load.c
|
||
|
+++ b/elf/dl-load.c
|
||
|
@@ -1889,9 +1889,9 @@ open_path (const char *name, size_t namelen, int mode,
|
||
|
if (sps->malloced)
|
||
|
free (sps->dirs);
|
||
|
|
||
|
- /* rtld_search_dirs is attribute_relro, therefore avoid writing
|
||
|
- into it. */
|
||
|
- if (sps != &rtld_search_dirs)
|
||
|
+ /* rtld_search_dirs and env_path_list are attribute_relro, therefore
|
||
|
+ avoid writing into it. */
|
||
|
+ if (sps != &rtld_search_dirs && sps != &env_path_list)
|
||
|
sps->dirs = (void *) -1;
|
||
|
}
|
||
|
|
||
|
--
|
||
|
1.8.3.1
|