diff options
author | Ulrich Drepper <drepper@redhat.com> | 1998-04-23 22:45:20 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1998-04-23 22:45:20 +0000 |
commit | af3878dff0963da299b6b54d3a76f9c1a68aac27 (patch) | |
tree | df3f2b6b5641eb41487f03869744c134676177cb /elf | |
parent | dc9335c14f91623093bf0c7db855e9d1fbc67071 (diff) | |
download | glibc-af3878dff0963da299b6b54d3a76f9c1a68aac27.tar.gz glibc-af3878dff0963da299b6b54d3a76f9c1a68aac27.tar.xz glibc-af3878dff0963da299b6b54d3a76f9c1a68aac27.zip |
(dlerror): Don't assume that __libc_internal_tsd_get is defined. __libc_getspecific is already well-protected, so just use it directly.
Diffstat (limited to 'elf')
-rw-r--r-- | elf/dl-load.c | 15 | ||||
-rw-r--r-- | elf/dlerror.c | 9 |
2 files changed, 13 insertions, 11 deletions
diff --git a/elf/dl-load.c b/elf/dl-load.c index 6433b32983..16534f4e1c 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -182,9 +182,13 @@ fillin_rpath (char *rpath, struct r_search_path_elem **result, const char *sep, struct r_search_path_elem *dirp; size_t len = strlen (cp); - /* `strsep' can pass an empty string. */ + /* `strsep' can pass an empty string. This has to be + interpreted as `use the current directory'. */ if (len == 0) - continue; + { + static char curwd[2]; + cp = strcpy (curwd, "."); + } /* Remove trailing slashes. */ while (len > 1 && cp[len - 1] == '/') @@ -331,8 +335,11 @@ _dl_init_paths (const char *llp) const char *cp = llp; nllp = 1; while (*cp) - if (*cp++ == ':') - ++nllp; + { + if (*cp == ':' || *cp == ';') + ++nllp; + ++cp; + } } else nllp = 0; diff --git a/elf/dlerror.c b/elf/dlerror.c index ba25611bbb..4716bdd272 100644 --- a/elf/dlerror.c +++ b/elf/dlerror.c @@ -56,13 +56,8 @@ dlerror (void) } /* Get error string. */ - if (__libc_internal_tsd_get != NULL) - { - result = (struct dl_action_result *) __libc_getspecific (key); - if (result == NULL) - result = &last_result; - } - else + result = (struct dl_action_result *) __libc_getspecific (key); + if (result == NULL) result = &last_result; if (! result->errstring) |