X-Recipient: archive-cygwin@delorie.com
X-Spam-Check-By: sourceware.org
Date: Fri, 20 Feb 2009 14:45:01 +0100
From: Corinna Vinschen <corinna-cygwin@cygwin.com>
To: cygwin@cygwin.com
Subject: Re: [ANNOUNCEMENT] [1.7] Updated: file-5.00-1
Message-ID: <20090220134501.GA6180@calimero.vinschen.de>
Reply-To: cygwin@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
References: <announce.20090210093102.GB11175@calimero.vinschen.de> <499E2B9A.5030907@cwilson.fastmail.fm> <20090220095916.GA759@calimero.vinschen.de> <499EB1AB.9060808@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <499EB1AB.9060808@gmail.com>
User-Agent: Mutt/1.5.17 (2007-11-01)
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
Precedence: bulk
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie.com@cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com

On Feb 20 13:35, Dave Korn wrote:
> Corinna Vinschen wrote:
> > Apparently.  I rebased the DLL alone and afterwards file simply stopped
> > working.  The DLL has a base address of 0x6a500000.  Even rebasing to
> > the very same address results in a coredump!
> > 
> > The DLL has been built with -static-libgcc.  Assuming that this might
> > have been the reason I rebuilt the file package without -static-libgcc,
> > so the DLL now depends on cyggcc_s.dll.  And, guess what, afterwards
> > the DLL is rebaseable just fine.
> > 
> > Dave?  Any idea why this occurs?  The crash happens when the Cygwin DLL
> > is running the ctors list.  Given that the file package is using plain
> > C, it seems that a static libgcc is non-relocatable for whatever reason.
> 
>   Investigating.  While I do that, I noticed a bug:
> 
> libtool: compile:  gcc-4 -DHAVE_CONFIG_H -I. -I..
> -DMAGIC=\"/usr/local/share/file/magic\" -Wall -Wstrict-prototypes
> -Wmissing-prototypes -Wpointer-arith -Wmissing-declarations -Wredundant-decls
> -Wnested-externs -Wsign-compare -Wreturn-type -Wswitch -Wshadow -Wcast-qual
> -Wwrite-strings -Wextra -Wunused-parameter -g -O2 -MT magic.lo -MD -MP -MF
> .deps/magic.Tpo -c magic.c -o magic.o
> magic.c: In function 'file_or_fd':
> magic.c:304: warning: passing argument 1 of 'strlcat' makes pointer from
> integer without a cast
> 
>    304				(void)strlcat(strlcpy(tmp, inname, len), ".exe", len);
> 
> 
>   That sort of construct works for "strcat (strcpy ())" but not for the 'l'
> versions, they aren't drop-in replacements.

Urgh!


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

