- How to remove parsing and NSPlaceholderMutableString frame Leaks in iPhone [closed]
- - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)
- namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
- currentElementValue = [elementName copy];
- if([elementName isEqualToString:@"markers"]) {
- //Initialize the array.
- appDelegate.markers = [[NSMutableArray alloc] init];
- }
- else if([elementName isEqualToString:@"marker"]) {
- //Initialize the book.
- aMarker = [[marker alloc] init];
- tempaMarkerDict = nil;
- tempaMarkerDict = [[NSMutableDictionary alloc] init];
- aMarker.name = [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"name"]];
- aMarker.distance = [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"distance"]];
- aMarker.lat = [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"lat"]];
- aMarker.lng = [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"lng"]];
- aMarker.phone= [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"phone"]];
- }
- NSLog(@"Processing Element: %@", elementName);
- }
- - (void) dealloc
- {
- [aMarker release];
- [currentElementValue release];
- [super dealloc];
- }
- - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)
- namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
- currentElementValue = [elementName copy];
- if([elementName isEqualToString:@"markers"]) {
- //Initialize the array.
- **appDelegate.markers = [[NSMutableArray alloc] init];** //2.7% leak found
- }
- else if([elementName isEqualToString:@"marker"]) {
- //Initialize the aMarker.
- **aMarker = [[marker alloc] init];** // 97% leak found
- aMarker.name = [attributeDict valueForKey:@"name"];
- aMarker.distance = [attributeDict valueForKey:@"distance"];
- aMarker.lat = [attributeDict valueForKey:@"lat"];
- aMarker.lng = [attributeDict valueForKey:@"lng"];
- aMarker.phone= [attributeDict valueForKey:@"phone"];
- }}
- - (void) dealloc {
- [aMarker release];
- [currentElementValue release];
- //[appDelegate.markers release]; //code get crash thats why commented
- [super dealloc];
- }
- **aMarker = [[marker alloc] init];** // 97% leak found