From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24418 invoked by alias); 23 Jan 2003 13:08:25 -0000 Mailing-List: contact libc-hacker-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-hacker-owner@sources.redhat.com Received: (qmail 24400 invoked from network); 23 Jan 2003 13:08:24 -0000 Received: from unknown (HELO Cantor.suse.de) (213.95.15.193) by 172.16.49.205 with SMTP; 23 Jan 2003 13:08:24 -0000 Received: from Hermes.suse.de (Hermes.suse.de [213.95.15.136]) by Cantor.suse.de (Postfix) with ESMTP id 5EDC81452D for ; Thu, 23 Jan 2003 14:08:23 +0100 (MET) To: libc-hacker@sources.redhat.com Subject: Crash in DT_FINI_ARRAY X-Yow: That's a decision that can only be made between you & SY SPERLING!! From: Andreas Schwab Date: Thu, 23 Jan 2003 13:08:00 -0000 Message-ID: User-Agent: Gnus/5.090013 (Oort Gnus v0.13) Emacs/21.3.50 (ia64-suse-linux) MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-SW-Source: 2003-01/txt/msg00165.txt.bz2 The pointers in DT_FINI_ARRAY are already relocated. Andreas. 2003-01-23 Andreas Schwab * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY elements. --- elf/dl-close.c.~1.93.~ 2003-01-16 11:19:32.000000000 +0100 +++ elf/dl-close.c 2003-01-22 21:11:29.000000000 +0100 @@ -241,7 +241,7 @@ _dl_close (void *_map) unsigned int cnt; for (cnt = 0; cnt < sz; ++cnt) - ((fini_t) (imap->l_addr + array[cnt])) (); + ((fini_t) array[cnt]) (); } /* Next try the old-style destructor. */ -- Andreas Schwab, SuSE Labs, schwab@suse.de SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 Nürnberg Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."