diff options
author | Jakub Jelinek <jakub@redhat.com> | 2004-10-14 05:57:55 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2004-10-14 05:57:55 +0000 |
commit | 9869e6ec913e268748f510ab6ec64b8fd62531bc (patch) | |
tree | f3f8b9c049c73755d183cc1c1affd34ee8f9772b /dlfcn/dlopenold.c | |
parent | 3ee87ca7d4c813087eeee8b9fd04b7836244a54a (diff) | |
download | glibc-9869e6ec913e268748f510ab6ec64b8fd62531bc.tar.gz glibc-9869e6ec913e268748f510ab6ec64b8fd62531bc.tar.xz glibc-9869e6ec913e268748f510ab6ec64b8fd62531bc.zip |
Updated to fedora-glibc-20041014T0548
Diffstat (limited to 'dlfcn/dlopenold.c')
-rw-r--r-- | dlfcn/dlopenold.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/dlfcn/dlopenold.c b/dlfcn/dlopenold.c index b83d64d91d..f10674aba3 100644 --- a/dlfcn/dlopenold.c +++ b/dlfcn/dlopenold.c @@ -1,5 +1,5 @@ /* Load a shared object at run time. - Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc. + Copyright (C) 1995-1999, 2000, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -37,13 +37,21 @@ struct dlopen_args }; +/* Non-shared code has no support for multiple namespaces. */ +#ifdef SHARED +# define NS __LM_ID_CALLER +#else +# define NS LM_ID_BASE +#endif + + static void dlopen_doit (void *a) { struct dlopen_args *args = (struct dlopen_args *) a; args->new = _dl_open (args->file ?: "", args->mode | __RTLD_DLOPEN, - args->caller); + args->caller, args->file == NULL ? LM_ID_BASE : NS); } extern void *__dlopen_nocheck (const char *file, int mode); |