[uClibc-cvs] CVS update of uClibc/ldso (ldso/ldso.c libdl/libdl.c)
Joakim Tjernlund
jocke at codepoet.org
Wed Aug 25 14:22:05 UTC 2004
Date: Wednesday, August 25, 2004 @ 08:22:05
Author: jocke
Path: /var/cvs/uClibc/ldso
Modified: ldso/ldso.c (1.110 -> 1.111) libdl/libdl.c (1.49 -> 1.50)
Hopefully fix Laszlo and Jacobs dlopen problem.
Index: uClibc/ldso/ldso/ldso.c
diff -u uClibc/ldso/ldso/ldso.c:1.110 uClibc/ldso/ldso/ldso.c:1.111
--- uClibc/ldso/ldso/ldso.c:1.110 Thu Aug 19 14:21:26 2004
+++ uClibc/ldso/ldso/ldso.c Wed Aug 25 08:22:04 2004
@@ -139,7 +139,7 @@
tpnt->ppnt = myppnt = (ElfW(Phdr) *) (load_addr + epnt->e_phoff);
for (j = 0; j < epnt->e_phnum; j++, myppnt++) {
if (myppnt->p_type == PT_DYNAMIC) {
- tpnt->dynamic_addr = (ElfW(Dyn) *)myppnt->p_vaddr + load_addr;
+ tpnt->dynamic_addr = (ElfW(Dyn) *)(myppnt->p_vaddr + load_addr);
tpnt->dynamic_size = myppnt->p_filesz;
}
}
Index: uClibc/ldso/libdl/libdl.c
diff -u uClibc/ldso/libdl/libdl.c:1.49 uClibc/ldso/libdl/libdl.c:1.50
--- uClibc/ldso/libdl/libdl.c:1.49 Tue Aug 17 07:37:54 2004
+++ uClibc/ldso/libdl/libdl.c Wed Aug 25 08:22:05 2004
@@ -179,8 +179,11 @@
if(_dl_debug)
fprintf(stderr, "Trying to dlopen '%s'\n", (char*)libname);
#endif
- if (!(tpnt = _dl_check_if_named_library_is_loaded((char *)libname, 0)))
+ tpnt = _dl_check_if_named_library_is_loaded((char *)libname, 0);
+ if (!(tpnt))
tpnt = _dl_load_shared_library(0, &rpnt, tfrom, (char*)libname, 0);
+ else
+ tpnt->usage_count++;
if (tpnt == NULL) {
_dl_unmap_cache();
return NULL;
More information about the uClibc-cvs
mailing list