* elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
	which happens at the beginning so that we can unload modules in
	__libc_freeres.
This commit is contained in:
Ulrich Drepper 2002-11-06 04:49:03 +00:00
parent 9a0a989516
commit a2d80f9ade
2 changed files with 6 additions and 2 deletions

View file

@ -11,8 +11,9 @@
2002-11-05 Ulrich Drepper <drepper@redhat.com>
* iconv/gconv_dl.c (do_release_all): Call __libc_dlclose as many
times as we opened the module.
* elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
which happens at the beginning so that we can unload modules in
__libc_freeres.
2002-11-06 Kaz Kojima <kkojima@rr.iij4u.or.jp>

View file

@ -169,6 +169,9 @@ _dl_fini (void)
if (l->l_info[DT_FINI] != NULL)
((fini_t) DL_DT_FINI_ADDRESS (l, l->l_addr + l->l_info[DT_FINI]->d_un.d_ptr)) ();
}
/* Correct the previous increment. */
--l->l_opencount;
}
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_STATISTICS, 0))