summaryrefslogtreecommitdiff
path: root/libexec
diff options
context:
space:
mode:
authorjunyoung <junyoung@NetBSD.org>2002-10-06 01:36:36 +0000
committerjunyoung <junyoung@NetBSD.org>2002-10-06 01:36:36 +0000
commitd0c512001c28656a82564bda4e4b4e052ef327b3 (patch)
treea1447a12dbdc561fc2c235616171303ef0da22d9 /libexec
parent64beaeafc8f795191cb58760ff35f4c0e4420841 (diff)
Embedded whitespace in dirname is supported again.
Diffstat (limited to 'libexec')
-rw-r--r--libexec/ld.elf_so/paths.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/libexec/ld.elf_so/paths.c b/libexec/ld.elf_so/paths.c
index 9d26f8e614d..3fd101435a1 100644
--- a/libexec/ld.elf_so/paths.c
+++ b/libexec/ld.elf_so/paths.c
@@ -1,4 +1,4 @@
-/* $NetBSD: paths.c,v 1.24 2002/10/05 16:26:37 junyoung Exp $ */
+/* $NetBSD: paths.c,v 1.25 2002/10/06 01:36:36 junyoung Exp $ */
/*
* Copyright 1996 Matt Thomas <matt@3am-software.com>
@@ -363,10 +363,12 @@ _rtld_process_hints(path_p, lib_p, fname)
}
doing_path = *b == '/';
- if (doing_path)
- path_p = _rtld_append_path(head_p, path_p, b,
- strcspn(b, " \t"));
- else {
+ if (doing_path) {
+ size_t tmp = len - 1;
+ while (b[tmp] == '#' || b[tmp] == ' ' || b[tmp] == '\t')
+ tmp--;
+ path_p = _rtld_append_path(head_p, path_p, b, tmp + 1);
+ } else {
char tmp = b[len];
b[len] = '\0';
_rtld_process_mapping(lib_p, b, len);