Closed Bug 15828 Opened 25 years ago Closed 25 years ago

RTLD_NOW hack no longer needed

Categories

(NSPR :: NSPR, defect, P3)

All
Linux
defect

Tracking

(Not tracked)

VERIFIED DUPLICATE of bug 16845

People

(Reporter: GregNoel, Assigned: srinivas)

Details

This hack is apparently no longer needed since glibc-2.1 and it causes problems in MkLinux systems. Index: prlink.c =================================================================== RCS file: /cvsroot/mozilla/nsprpub/pr/src/linking/prlink.c,v retrieving revision 3.26 diff -c -r3.26 prlink.c *** prlink.c 1999/10/06 01:05:33 3.26 --- prlink.c 1999/10/08 06:49:17 *************** *** 39,49 **** #ifdef XP_UNIX #ifdef USE_DLFCN #include <dlfcn.h> - #ifdef LINUX - #define _PR_DLOPEN_FLAGS RTLD_NOW - #else #define _PR_DLOPEN_FLAGS RTLD_LAZY - #endif /* LINUX */ #elif defined(USE_HPSHL) #include <dl.h> #elif defined(USE_MACH_DYLD) --- 39,45 ----
Status: NEW → ASSIGNED
Has this modification been tested on Linux platforms besides PPC?
The problem of what flags PR_LoadLibrary should pass to dlopen has bugged us so long, that I think the best solution is to have a new load-library function that takes a 'flags' argument. This way, each caller can decide what flags to pass to dlopen. The current design has NSPR dictate which dlopen flags to use for all NSPR clients. If only one client runs into a particular dlopen bug and needs to work around it by using the RTLD_NOW flag, all the other NSPR clients are forced to use the RTLD_NOW flag and may run into other problems. Another Mozilla developer, Kent Watsen, also requested that PR_LoadLibrary use the RTLD_GLOBAL flag. So this new function will also meet his project's needs.
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → DUPLICATE
This bug is a duplicate of bug #16845. *** This bug has been marked as a duplicate of 16845 ***
VERIFY dupe
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.