Pergunta

Eu tenho a seguinte função:

- (NSString *)urlEncodedValue {
NSString *result = (NSString *)CFURLCreateStringByAddingPercentEscapes(
                   kCFAllocatorDefault, 
                   (CFStringRef)self, 
                   NULL, 
                   CFSTR("?=&+/\r\n"), 
                   kCFStringEncodingUTF8
);

return [result autorelease];

}

Por que é Clang dando-me as seguintes reclamações?

  • 1 Ligue para a função retorna 'CFURLCreateStringByAddingPercentEscapes' um objeto Núcleo Fundação com um +1 manter a contagem (referência possuir)
  • 2 Objeto enviou mensagem -autorelease
  • 3 Objeto retornou ao chamador como uma referência possuir (single manter a contagem transferido para chamador)
  • 4 Object over-autoreleased: objeto foi enviado -autorelease mas o objeto tem zero (localmente visível) reter contagem

Para o melhor de meu conhecimento, este está em conformidade com as diretrizes da Apple em matéria de gestão de memória e propriedade de objeto. Eu tenho que liberar explicitamente o objeto? Este erro surgiu 19 vezes no meu projeto, todas em circunstâncias semelhantes. O que estou fazendo de errado?

Foi útil?

Solução

Eu encontrei a resposta à minha pergunta, publicá-la aqui se alguém se depara com a questão. Eu estava usando o verificador-0,198, verificador-0,204 relatórios existe tal problema. Parece que foi uma regressão temporária.

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