2010-10-26 3 views
0

My iPhone приложение сбой и получает ошибку EXC_BAD_ACCESS при использовании этого кода:EXC_BAD_ACCESS - iPhone

NSError *error; 
     NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); //1 
     NSString *documentsDirectory = [paths objectAtIndex:0]; //2 
     NSString *path = [documentsDirectory stringByAppendingPathComponent:@"stats.plist"]; //3 

     NSFileManager *fileManager = [NSFileManager defaultManager]; 

     if (![fileManager fileExistsAtPath: path]) //4 
     { 
      NSString *bundle = [[NSBundle mainBundle] pathForResource:@"stats" ofType:@"plist"]; //5 

      [fileManager copyItemAtPath:bundle toPath: path error:&error]; //6 
      [bundle release]; 
     } 

     NSMutableDictionary *savedStock = [[NSMutableDictionary alloc] initWithContentsOfFile: path]; 

     //load from savedStock example int value 
     score.highScore = [[savedStock objectForKey:@"score"] intValue]; 
     score.deaths = [[savedStock objectForKey:@"deaths"] intValue]; 
     score.iFallPoints = [[savedStock objectForKey:@"iFallPoints"] intValue]; 
     score.difficulty = [[savedStock objectForKey:@"difficulty"] intValue]; 

     [savedStock release]; 

оценки является одноточечно я доступ.

+0

Счетчик стека также полезен – bioffe

+1

не выпускайте пучок! – Alin

ответ

3

Вы не распределили или не сохранили пучок; не отпускайте его.

См. memory management programming guide, если вам нужна помощь в понимании этого.

Кроме того, статический анализатор может быть полезен для указания некоторых ошибок памяти.

Смежные вопросы