Write out which destructor is called while debugging.
authordrepper <drepper>
Fri, 6 Mar 1998 17:10:55 +0000 (17:10 +0000)
committerdrepper <drepper>
Fri, 6 Mar 1998 17:10:55 +0000 (17:10 +0000)
elf/dl-fini.c

index 5af43d3..9dcd87a 100644 (file)
@@ -1,5 +1,5 @@
 /* Call the termination functions of loaded shared objects.
-   Copyright (C) 1995, 1996 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1998 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
@@ -29,7 +29,15 @@ _dl_fini (void)
       {
        if (l->l_info[DT_FINI] &&
            !(l->l_name[0] == '\0' && l->l_type == lt_executable))
-         (*(void (*) (void)) (l->l_addr + l->l_info[DT_FINI]->d_un.d_ptr)) ();
+         {
+           /* When debugging print a message first.  */
+           if (_dl_debug_impcalls)
+             _dl_debug_message ("\n\tcalling fini: ",
+                                l->l_name[0] ? l->l_name : _dl_argv[0],
+                                "\n", NULL);
+
+           (*(void (*) (void)) (l->l_addr + l->l_info[DT_FINI]->d_un.d_ptr)) ();
+         }
        /* Make sure nothing happens if we are called twice.  */
        l->l_init_called = 0;
       }