about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2005-03-07 08:06:09 +0000
committerUlrich Drepper <drepper@redhat.com>2005-03-07 08:06:09 +0000
commit21745dfa6111504005b89210828335d3816ed1f4 (patch)
tree3694e196eab1ac4cf3deb69961ccc579a104e329
parentd8505f90bf57bd6fba73242ab463fcbda02582da (diff)
downloadglibc-21745dfa6111504005b89210828335d3816ed1f4.tar.gz
glibc-21745dfa6111504005b89210828335d3816ed1f4.tar.xz
glibc-21745dfa6111504005b89210828335d3816ed1f4.zip
* elf/dl-close.c (_dl_close): Decrement l_opencount before
	printing debug message.
	* elf/dl-open.c (dl_open_worker): Always print the new opencount
	in debug messages.
-rw-r--r--ChangeLog7
-rw-r--r--elf/dl-close.c6
-rw-r--r--elf/dl-open.c2
3 files changed, 11 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 9171f4c364..b4c6e8a458 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2005-03-07  Ulrich Drepper  <drepper@redhat.com>
+
+	* elf/dl-close.c (_dl_close): Decrement l_opencount before
+	printing debug message.
+	* elf/dl-open.c (dl_open_worker): Always print the new opencount
+	in debug messages.
+
 2005-03-06  Ulrich Drepper  <drepper@redhat.com>
 
 	* elf/dl-close.c (_dl_close): Unify debug message format.
diff --git a/elf/dl-close.c b/elf/dl-close.c
index eaf29ea99f..6681c5d3e7 100644
--- a/elf/dl-close.c
+++ b/elf/dl-close.c
@@ -138,14 +138,14 @@ _dl_close (void *_map)
   /* Decrement the reference count.  */
   if (map->l_opencount > 1 || map->l_type != lt_loaded)
     {
+      /* Decrement the object's reference counter, not the dependencies'.  */
+      --map->l_opencount;
+
       /* There are still references to this object.  Do nothing more.  */
       if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_FILES, 0))
 	_dl_debug_printf ("\nclosing file=%s; opencount=%u\n",
 			  map->l_name, map->l_opencount);
 
-      /* Decrement the object's reference counter, not the dependencies'.  */
-      --map->l_opencount;
-
       /* If the direct use counter reaches zero we have to decrement
 	 all the dependencies' usage counter.  */
       if (map->l_direct_opencount == 0)
diff --git a/elf/dl-open.c b/elf/dl-open.c
index f1fcfbcaaf..0e06ca15d5 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -282,7 +282,7 @@ dl_open_worker (void *a)
       /* Let the user know about the opencount.  */
       if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_FILES, 0))
 	_dl_debug_printf ("opening file=%s [%lu]; opencount=%u\n\n",
-			  new->l_name, new->l_ns, new->l_opencount);
+			  new->l_name, new->l_ns, new->l_opencount + 1);
 
       /* If the user requested the object to be in the global namespace
 	 but it is not so far, add it now.  */