about summary refs log tree commit diff
path: root/elf/dl-close.c
diff options
context:
space:
mode:
Diffstat (limited to 'elf/dl-close.c')
-rw-r--r--elf/dl-close.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/elf/dl-close.c b/elf/dl-close.c
index cbbb2ae298..58a84b5bfc 100644
--- a/elf/dl-close.c
+++ b/elf/dl-close.c
@@ -80,6 +80,7 @@ _dl_close (void *_map)
       struct link_map *imap = map->l_initfini[i];
       if (imap->l_opencount == 1 && imap->l_type == lt_loaded
 	  && (imap->l_info[DT_FINI] || imap->l_info[DT_FINI_ARRAY])
+	  && ! (list[i]->l_flags_1 & DF_1_NODELETE)
 	  /* Skip any half-cooked objects that were never initialized.  */
 	  && imap->l_init_called)
 	{