diff options
-rw-r--r-- | libexec/ld.so/library.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libexec/ld.so/library.c b/libexec/ld.so/library.c index c6afa737c6b..3a34b628963 100644 --- a/libexec/ld.so/library.c +++ b/libexec/ld.so/library.c @@ -1,4 +1,4 @@ -/* $OpenBSD: library.c,v 1.50 2005/10/12 20:36:16 kurt Exp $ */ +/* $OpenBSD: library.c,v 1.51 2005/10/12 20:48:15 kurt Exp $ */ /* * Copyright (c) 2002 Dale Rahn @@ -64,6 +64,8 @@ _dl_unload_shlib(elf_object_t *object) object->status |= STAT_UNLOADED; TAILQ_FOREACH(n, &object->child_list, next_sib) _dl_unload_shlib(n->data); + TAILQ_FOREACH(n, &object->grpref_list, next_sib) + _dl_unload_shlib(n->data); DL_DEB(("unload_shlib unloading on %s\n", object->load_name)); _dl_load_list_free(object->load_list); _dl_munmap((void *)object->load_addr, object->load_size); |