I am using a singleton class to share data between views in my iphone app. My singleton class contains a dictionary which I allocate in my -init method:
- (id)init
{        
   if ( self = [super init] )    
    {
            self.dataList = [[NSMutableDictionary alloc]init];
    }
    return self;
}
I release it in my dealloc method:
- (void)dealloc
{   
    [dataList release];
    [super dealloc];
}
This dataList is downloaded from a server, and I do this multiple times in my app,so I have a custom setter method to release the old one, and retain the new one:
-(void) setDataList:(NSMutableDictionary*)d    
{
    if( dataList !=nil){
    [dataList release];
    dataList = [d retain];
else 
   dataList = [d retain];
}
ON using the leaks tool, I am getting a memory leak of the dictionary. I think I am doing the alloc and release of the dictionary properly..does the leak occur because the dealloc method of the singleton is not getting called?
Thanks for your help,
Srikanth