[ Show ]
Support VoyForums
[ Shrink ]
VoyForums Announcement: Programming and providing support for this service has been a labor of love since 1997. We are one of the few services online who values our users' privacy, and have never sold your information. We have even fought hard to defend your privacy in legal cases; however, we've done it with almost no financial support -- paying out of pocket to continue providing the service. Due to the issues imposed on us by advertisers, we also stopped hosting most ads on the forums many years ago. We hope you appreciate our efforts.

Show your support by donating any amount. (Note: We are still technically a for-profit company, so your contribution is not tax-deductible.) PayPal Acct: Feedback:

Donate to VoyForums (PayPal):

Login ] [ Contact Forum Admin ] [ Main index ] [ Post a new message ] [ Search | Check update time | Archives: 12345678[9]10 ]

[ Next Thread | Previous Thread | Next Message | Previous Message ]

Date Posted: 09:43:24 11/27/00 Mon
Author: Steen Jansdal
Subject: Re: Memory leak fix
In reply to: Michel 's message, "Re: Memory leak fix" on 07:41:30 11/27/00 Mon

Hi Michel,

Oh, I see. I wasn't aware of the WMDestroy routine.

But MemProof is a very good utility program, that haven't
played tricks with me yet, so I investigated what it was
complaining about. It still said that a mouse handler
wasn't released, so after digger deep into the code I've
written, I finally found it. I have an invisible
TImageScrollBox, and invisible component don't receive
a WMDestroy call.

Best regards,

Steen Jansdal

> Hi Steen,
> I'm not sure which version you are using, but in
> version 1.1, the FMouseHandler is destroyed in the
> WMDestroy windows message, for the reason mentionned
> in the comment:
> procedure TImageScrollBox.WMDestroy(var Message:
> TWMDestroy);
> begin
> { the mouse handler object may not be destroyed in
> the destructor,
> because the mouse handler may make reference to
> FImageScrollBox.Handle,
> and the Handle property is not valid in the
> destructor.
> MB Jul 31, 2000. Set the mouse handler to nil
> after freeing it. For
> some reason at design time, WMDestroy may be
> called twice, causing an
> access violation when closing a form at design
> time. This has been
> reproduced when a form contained a TRzSplitter
> from the Raize
> components.
> }
> FMouseHandler.Free;
> FMouseHandler := nil;
> inherited;
> end;
> Best regards,
> Michel
> > I have found a memory leak in your module:
> >
> > In EnImgScr.Pas the following line
> >
> > FMouseHandler.Free;
> >
> > should be added to destructor
> TImageScrollBox.Destroy;
> >
> > The excellent program MemProof found that. I will
> > highly this program. It's freeware.

[ Next Thread | Previous Thread | Next Message | Previous Message ]


[ Contact Forum Admin ]

Forum timezone: GMT-5
VF Version: 3.00b, ConfDB:
Before posting please read our privacy policy.
VoyForums(tm) is a Free Service from Voyager Info-Systems.
Copyright © 1998-2019 Voyager Info-Systems. All Rights Reserved.