Re: Someone stomping on our memory

From: Andres Kroonmaa <andre@dont-contact.us>
Date: Mon, 13 Nov 2000 23:30:26 +0200

On 14 Nov 2000, at 4:40, Adrian Chadd <adrian@creative.net.au> wrote:

> On Mon, Nov 13, 2000, Andres Kroonmaa wrote:
>
> > doesn't occur when mempools are disabled.
> > Seems that we call xfree where we should call memFree.
> >
> > Looks like I can reproduce it quite reliably with requests
> > ftp://username:password@ftp.site.com/
> >
> > I'll look into it, but maybe someone (Adrian?) who converted ftp.c
> > to some mempools, can find faster what should be checked or done.
>
> Interesting. I didn't convert anything to mempools that someone
> else gave to me first, unless its in the storage manager. :)

 I just remembered that you've been into mempools ;)

> An easy check is to register all returns from malloc and friends,
> and make sure they're existing when free is called. See if that
> fixes it.

 I used --enable-xmalloc-debug with empty cache_swap. Did its job
 very well.

--- ftp.c Sat Jul 1 14:01:52 2000
+++ ftp.c Mon Nov 13 22:50:11 2000
@@ -1477,7 +1477,7 @@
     w = ftpState->pathcomps;
     ftpState->filepath = w->key;
     ftpState->pathcomps = w->next;
- xfree(w);
+ memFree(w,MEM_WORDLIST);
     /* Check if we are to CWD or RETR */
     if (ftpState->pathcomps != NULL || ftpState->flags.isdir) {
        ftpSendCwd(ftpState);

 I think this is pretty much it. bug present in HEAD.

 yet I'm not sure if this is the same issue Henrik was seeing.

------------------------------------
 Andres Kroonmaa <andre@online.ee>
 Delfi Online
 Tel: 6501 731, Fax: 6501 708
 Pärnu mnt. 158, Tallinn,
 11317 Estonia
Received on Mon Nov 13 2000 - 14:34:13 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:12:58 MST