delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2009/11/05/13:24:28

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
Date: Thu, 5 Nov 2009 19:24:02 +0100
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: malloc overrides
Message-ID: <20091105182402.GU26344@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <4AF29EC2 DOT 2050808 AT users DOT sourceforge DOT net> <4AF2D091 DOT 4030508 AT gmail DOT com> <4AF30A85 DOT 5070208 AT users DOT sourceforge DOT net> <416096c60911051022obc335ceu15dc7ee0e487cb66 AT mail DOT gmail DOT com>
MIME-Version: 1.0
In-Reply-To: <416096c60911051022obc335ceu15dc7ee0e487cb66@mail.gmail.com>
User-Agent: Mutt/1.5.20 (2009-06-14)
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On Nov  5 18:22, Andy Koppe wrote:
> 2009/11/5 Yaakov (Cygwin/X):
> >>> extern void _exit (int);
> >>> extern char* strdup (const char*);
> >>
> >>   static int are_we_stuck = 1;
> >>>
> >>> char* malloc(unsigned n) {
> >>
> >>       are_we_stuck = 0;
> >>>
> >>>     return 0;
> >>> }
> >>>
> >>> int main(void) {
> >>>     strdup("yo");
> >>
> >>       _exit (are_we_stuck);
> >>>
> >>> }
> >>
> >>   FTFY.
> >
> > Funny, as I went to sleep last night I thought of just that solution. In
> > practice, though, while it doesn't hang, it doesn't give the correct answer
> > either.   As Corinna said, the malloc override needs to be functional, in
> > that it allocates memory which can then be free()d.  So this isn't going to
> > be quite so simple. :-(
> 
> Does the memory actually need to be freed?

Cygwin itself calls free, so the application implementation has to
provide both.


Corinna

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

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019