Voici le code que je utilise:NSFileManager fileExistsAtPath: se bloque avec SIGABRT sur iOS4.1, pourquoi?
NSFileManager* defaultMgr = [NSFileManager defaultManager];
if (![defaultMgr fileExistsAtPath:path]) {
return nil;
}
Où chemin est une URL pour un fichier sur le système comme: "file: // localhost/private/var/mobile/Applications/blahblahblah"
Cela se bloque avec SIGABRT lorsque l'appel à fileExistsAtPath: est effectué. Le fichier existe, et peut-être que le format de chaîne n'est pas ce que cette méthode préférerait, mais il devrait juste renvoyer NO. Ce code fait partie d'une bibliothèque très populaire, et même si je n'ai pas strictement besoin de vérifier l'existence du chemin, je veux vraiment comprendre ce qui se passe ici, au cas où je devrais utiliser cette méthode directement.
particulièrement:
- est l'auteur de la bibliothèque en utilisant correctement cette méthode?
- Comment peut-on attraper ou s'attendre à une exception de cette méthode?
(Les documents SDK ne discutent pas des exceptions susceptibles d'être générées par cette méthode.) - Est-ce un bogue que je devrais signaler à Apple?
un détail: je cours sur mon appareil iPhone 4 avec iOS 4.1