Now there was no need to create static either.

if (fileInfo)
  delete fileInfo;
Just add before returning that function.
That is a bug in Mac files.
Best regards
Agha

On Aug 23, 2009, at 11:37 AM, Agha Khan wrote:

Thank you All.
I came from Windows and this is my first project with Objective-C.

I am looking Mac provided file SoundEngine.cpp about line 770
OSStatus LoadTrack(const char* inFilePath, Boolean inAddToQueue, Boolean inLoadAtOnce)

I realized we are creating pointer to BG_FileInfo pointer and never released when we again allocating same pointer. That is a leak. So I changed from
BG_FileInfo *fileInfo = new BG_FileInfo;
to
static BG_FileInfo *fileInfo = NULL;
                        
                        if (fileInfo != NULL)
                        {
                                delete fileInfo;
                                fileInfo = NULL;
                        }
                        
                        fileInfo = new BG_FileInfo;

Now there is no leak. :-)

I also tried NSBundle* bundle = [[NSBundle mainBundle] retain];

but leak was still there.

All comment are appreciated.

Need more comments what I did is correct.

Best regards
Agha




On Aug 23, 2009, at 11:17 AM, Kyle Sluder wrote:

On Aug 23, 2009, at 9:53 AM, Agha Khan <[email protected]> wrote:

+ (void) PlaySound:(int) Index

Method names should begin with lowercase letters. Classes really are the only things in ObjC that are typically capitalized.

Also you should be using the NSUInteger typedef here.

 NSBundle* bundle = [NSBundle mainBundle];

…

 [bundle release];

You need to reread the memory management documentation again. You didn't get the bundle through alloc, new, or copy, and there you don't own it and mustn't release it.

--Kyle Sluder


_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/agha.khan%40me.com

This email sent to [email protected]

_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to