Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <20020917192111.78396.qmail@web10002.mail.yahoo.com> Date: Tue, 17 Sep 2002 12:21:11 -0700 (PDT) From: Tirth Sanyal Subject: Re: Memory Leak - DLL problem To: cygwin AT cygwin DOT com Cc: Danny Smith , dwsharp AT iee DOT org In-Reply-To: <000101c25c76$55e45980$a899a7cb@DANNY> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Hi, I tried allocating and deallocating on the same heap i.e. the heap belonging to the DLL. However, the problem still persists. Looks like there might be some other problem. I have uploaded the modified version of the programs as a tarball with a README file for installing and running the program should you decide to try it out yourself. Here is the url: http:://www.cs.ucsb.edu/~tsanyal/mem_leak_demo.tgz Would appreciate any more ideas. Thanks. -Tirth --- Danny Smith wrote: > Don Sharp - Re: Memory Leak - DLL problemRe: Memory > Leak - DLL problem > From: Don Sharp > To: gnuwin32 > Date: Sat, 14 Sep 2002 21:13:56 +0100 > Subject: Re: Memory Leak - DLL problem > References: > <20020914194429 DOT 961 DOT qmail AT web10003 DOT mail DOT yahoo DOT com> > > > > Tirth Sanyal wrote: > > > > Hi, > > > > I have been encountering a strange memory leak > problem > > in my code which has prompted me to write a small > > program to isolate and demonstrate it. I have > pasted > > the code at the bottom of the email. > > > > > > - In a DLL say libfoo, I define and export a class > > Base and also export a function "foo" whose > interface > > is the following: > > Base* foo(void) > > > > - "foo" instantiates an object of the class Base > and > > returns a pointer to this object. > > > > - In my application (which has the main routine) I > > load the dynamic library libfoo, call function > "foo" > > in it , get the pointer to the newly created > object > > and immediately call "delete" on this pointer. > > > > - The destructor function of the class Base > contained > > in the libfoo DLL is called. > > > > > > > There is an article called 'DLL Maintenance Made > Easy' by Geoff > Vandegrift . It used to be at > www.devx.com/free/mgznarch/vcdj but best to do a > Google search. > > It explains, among other things, how to "wrap" > memory allocations and > de-allocations so that you don't get leakage problem > from allocating > memory on one heap and de-allocating in another. > > Danny > __________________________________________________ Do you Yahoo!? Yahoo! News - Today's headlines http://news.yahoo.com -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/