From 4e2a4fe8fc73c76dfffa70b075fc6b2e38455acd Mon Sep 17 00:00:00 2001 From: itohy Date: Thu, 16 Jan 2003 08:45:56 +0000 Subject: Fix problem where dlclose() falls into infinite loop. --- libexec/ld.aout_so/rtld.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'libexec') diff --git a/libexec/ld.aout_so/rtld.c b/libexec/ld.aout_so/rtld.c index cc1993b600b..74fc419e358 100644 --- a/libexec/ld.aout_so/rtld.c +++ b/libexec/ld.aout_so/rtld.c @@ -1,4 +1,4 @@ -/* $NetBSD: rtld.c,v 1.86 2002/12/10 17:14:34 thorpej Exp $ */ +/* $NetBSD: rtld.c,v 1.87 2003/01/16 08:45:56 itohy Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -781,11 +781,9 @@ unmap_object(smp) } for (rtsp = rt_symbol_head; (rtp = rtsp->rt_next) != NULL;) { + rtsp->rt_next = rtp->rt_next; if (rtp->rt_smp == smp) { - rtsp->rt_next = rtp->rt_next; clear_rts(rtp); - } else { - rtsp->rt_next = rtsp->rt_next; } } } -- cgit