Вопрос

В какой-то момент я выделяю элемент NSMutablataTA, как это:

NSMutableData* data=[[NSMutableData alloc] initWithLength:0];

Позже я делаю:

NSString *dataAsStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] ;
completeCommand = [NSString stringWithFormat:@"%@%@",
    incompleteMessage,
    [dataAsStr substringWithRange:NSMakeRange(startIndex, i-startIndex)]];         
[incompleteMessage release];
incompleteMessage = nil;
[dataAsStr release];

И, наконец, я звоню:

[data release]; //Here I get a BAD_ACCESS error since data gets a release count of -1

В настоящее время в соответствии с инструментами (ассигнования с поддержкой зомби), первая строка второго блока NSString * DataasString = ... Вызывает [Выпуск данных

Где это происходит?

Это было полезно?

Решение

Мишенство решено .. Это довольно большой метод, поэтому я не осознавал, что [выпуск данных]; был в петле, а его распределение не было. Это вызывало зомби.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top