Eis um problema estranho do OS X: o código acima, de oito caracteres, faz quase qualquer aplicativo do Mountain Lion travar instantaneamente.

Basta digitar File:/// (com “f” maiúsculo) direto no programa, em qualquer campo de texto, e a maioria dos programas no OS X 10.8 simplesmente para de funcionar, exibindo a seguinte mensagem de erro:

*** Terminating app due to uncaught exception ‘NSInternalInconsistencyException’, reason: ‘condition “wrong extraction: File:///”‘

terminate called throwing an exception

abort() called

O erro está limitado apenas ao Mountain Lion, e parece estar relacionado à função Detectores de Dados: ela permite que apps reconheçam automaticamente datas, localizações e dados de contato.

Um usuário do Hacker News explica o possível motivo dos programas travarem, e tem tudo a ver com o “f” maiúsculo:

Parece que o bug é ativado por qualquer coisa começando com File:// (mais uma terceira barra / ) onde não se diferencia entre maiúsculas e minúsculas. Depois, algo na extração de dados faz a suposição incorreta de que a cadeia deve começar com file:// (mais /) em letra minúscula, e ativa um assert [que exige letra minúscula no comando, e interrompe a execução do app]. É realmente muito ruim que um bug nos detectores de dados possa derrubar um aplicativo inteiro.

O Gizmodo UK tentou replicar o erro em um MacBook preto antigo que roda OS X Lion 10.7.1, mas não deu certo – o bug está limitado ao Mountain Lion. Além disso, se o programa não usar a função Detectores de Dados, ele não vai travar mesmo se estiver rodando no Mountain Lion.

A Apple já foi notificada sobre o bug, então uma correção deve estar a caminho. [Open Radar via Hacker News via The Next Web]