Search code examples
iphoneobjective-ciosperformancesbjson

Memory leak when parse JSON string using SBJSON


I am using following code to parse JSON and getting memory leak (100%) on line number 2. I don't know what is the problem, can someone help me ?

    NSString *response = [request responseString];
    NSMutableDictionary *responseJSON = [response JSONValue]; (100% leak)

    NSString *tockenString = [responseJSON objectForKey:@"Token"];
    NSString *userIDString = [responseJSON objectForKey:@"ID"];

Solution

  • I found the answer. Go to SBJsonParser.m function scanRestOfString and change the line

    from

            *o = [[NSMutableString alloc] initWithBytes:(char*)c length:len encoding:NSUTF8StringEncoding];
    

    to

            *o = [[[NSMutableString alloc] initWithBytes:(char*)c length:len encoding:NSUTF8StringEncoding] autorelease];
    

    SBJsonParser has a like in scanRestOfString/NSMutableString. I reported the bug as well. Thank you all.