Pergunta

Em algum momento, alquei um elemento nsmutabledata como este:

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

Mais tarde, eu faço:

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

E finalmente eu ligo:

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

Agora, de acordo com os instrumentos (alocações com suporte de zumbis), a primeira linha do segundo bloco NSString *DataAsstring = ... Chamadas [liberação de dados

Onde isso acontece?

Foi útil?

Solução

O Mistery é resolvido. É um método bastante grande, então eu não percebi que [liberação de dados]; estava em um loop e seu aloc não estava. Isso estava causando o zumbi.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top