Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 7th, 2012  |  syntax: None  |  size: 2.31 KB  |  hits: 13  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. How to remove parsing and NSPlaceholderMutableString frame Leaks in iPhone [closed]
  2. - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)
  3. namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
  4.  
  5.     currentElementValue = [elementName copy];
  6.  
  7. if([elementName isEqualToString:@"markers"]) {
  8.     //Initialize the array.
  9.     appDelegate.markers = [[NSMutableArray alloc] init];
  10. }
  11.  
  12. else if([elementName isEqualToString:@"marker"]) {
  13.  
  14.     //Initialize the book.
  15.     aMarker = [[marker alloc] init];
  16.     tempaMarkerDict = nil;
  17.     tempaMarkerDict = [[NSMutableDictionary alloc] init];
  18.     aMarker.name = [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"name"]];
  19.     aMarker.distance = [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"distance"]];
  20.     aMarker.lat = [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"lat"]];
  21.     aMarker.lng = [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"lng"]];
  22.     aMarker.phone= [[NSMutableString alloc] initWithString:[attributeDict valueForKey:@"phone"]];
  23. }
  24.  
  25. NSLog(@"Processing Element: %@", elementName);
  26. }
  27.  
  28. - (void) dealloc
  29. {
  30.  
  31. [aMarker release];
  32. [currentElementValue release];
  33. [super dealloc];
  34. }
  35.        
  36. - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)
  37. namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
  38.  
  39.     currentElementValue = [elementName copy];
  40.  
  41. if([elementName isEqualToString:@"markers"]) {
  42.     //Initialize the array.
  43.     **appDelegate.markers = [[NSMutableArray alloc] init];**   //2.7% leak found
  44.  
  45.  
  46. }
  47.  
  48. else if([elementName isEqualToString:@"marker"]) {
  49.  
  50.     //Initialize the aMarker.
  51.     **aMarker = [[marker alloc] init];**      // 97% leak found
  52.        aMarker.name = [attributeDict valueForKey:@"name"];
  53.     aMarker.distance = [attributeDict valueForKey:@"distance"];
  54.     aMarker.lat = [attributeDict valueForKey:@"lat"];
  55.     aMarker.lng = [attributeDict valueForKey:@"lng"];
  56.     aMarker.phone= [attributeDict valueForKey:@"phone"];
  57. }}
  58. - (void) dealloc {
  59. [aMarker release];
  60. [currentElementValue release];
  61. //[appDelegate.markers release];   //code get crash thats why commented
  62.     [super dealloc];
  63. }
  64.        
  65. **aMarker = [[marker alloc] init];**      // 97% leak found