summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKurt Miller <kurt@cvs.openbsd.org>2005-10-12 20:48:16 +0000
committerKurt Miller <kurt@cvs.openbsd.org>2005-10-12 20:48:16 +0000
commit5321e2257abb1551c5d340c5b3195799ad90f133 (patch)
tree5ed17b1c062262153154b4f7f1edd82b7e7fa06b
parentd7d973312929769323ce3ab90b6131f2352df501 (diff)
add missing grpref unload propogation (sync with library_mquery)
-rw-r--r--libexec/ld.so/library.c4
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);