2011-08-31 6 views
0
 // Allocate a product 
     Product *color = [[Product alloc]init]; 

     // The result set 
     char *name = (char *)sqlite3_column_text(statement, 1); 
     NSString *nameStr = [[NSString alloc]initWithUTF8String:name]; 
     char *code = (char *)sqlite3_column_text(statement, 2); 
     NSString *codeStr = [[NSString alloc]initWithUTF8String:code]; 

     color.name = nameStr; 
     color.code = codeStr; 

     // Release 
     [nameStr release]; 
     [codeStr release]; 
     [myProducts addObject:color]; 
     [color release]; 

프로파일 러는 문자열을 할당하는 각 줄에서 누수를 보여줍니다. 내가 발표 할 때 문제의 원인을 알 수는 없습니다.누출 된 NSString, 이유는 확실하지 않습니다?

편집 : 문제가 발견되었습니다. 내 Product 객체에서 문자열을 릴리스해야했습니다. 내가 그걸 놓쳤다는 것을 믿을 수 없다 ...

+0

마지막에 '색상'을 배포해야하는 것처럼 보입니까? –

+0

예, 죄송합니다. 수정 사항을보고 싶었지만 코드에 [색상 릴리스]가있었습니다. 누수가 nameStr 문자열 및 codeStr – MrShoot

+0

의 할당과 함께 발생합니다. 문제가 발견되었습니다. 내 Product 객체에서 문자열을 릴리스해야했습니다. 내가 그걸 놓친 걸 믿을 수 없어. – MrShoot

답변

0

데이터 모델은 dealloc에서 해제하지 않았다.

관련 문제