Re: String memory leak
Re: String memory leak
- Subject: Re: String memory leak
- From: email@hidden (Peter Robinson)
- Date: Sat, 1 Apr 2006 23:33:43 +0100
Bruce Truax <email@hidden> wrote:
> On 4/1/06 10:56 AM, "Peter Robinson" <email@hidden> wrote:
> > In other words, do this:
> >
> > - (void)GLASS:(NSString *)parameterString
> > {
> > [aSurface setGlass:[NSString stringWithFormat:
> > @"GLASS %@", parameterString]];
> > [aSurface setSurfaceNumber:surfaceNumber];
> > surfaceNumber++;
> > [surfaceArray addObject:aSurface];
> > [aSurface release]; // <-----------
> > aSurface = [[ACSurface alloc]init];
> > }
>
> That is exactly what I thought but when I release aSurface as you show my
> program crashes because the pointer in surfaceArray is corrupted. Perhaps I
> have another problem earlier in the code which is causing this problem.
You must have. I suggest you check all the other places you are
assigning to the aSurface instance variable (or -releasing,
-autoreleasing or -retaining it). This kind of problem is exactly why
it's a good idea to isolate this stuff in a setter method as Andy
suggests.
(I'm assuming surfaceArray is some kind of NSArray or similar. If in
fact it's your own code, the first place to look is in its -addObject:
method.)
Regards,
Peter
--
Peter Robinson
<http://www.ticketswitch.com/> Concerts, sport and theatre tickets
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden