To add a little more information: it happens when encountering any directory 
that the user can’t read.
My app should get an access denied error (the enumerator should be nil for 
instance). It shouldn’t crash.


> On 22 Oct 2016, at 20:37, Jean Suisse <jean.li...@gmail.com> wrote:
> 
> Well, I was afraid of that. 
> Unfortunately, below is the smallest sample of code possible… still crashes. 
> Looks like I may have to check the directory rights before even attempting to 
> enumerate it.
> Expected result in the present case is: “the while loop doesn’t run because 
> the directory isn’t accessible to the current user”.
> 
> 
> let directoryURL = URL(fileURLWithPath: "/.DocumentRevisions-V100/")
> let manager            = FileManager.default
> 
> let keys = [URLResourceKey.nameKey, URLResourceKey.isDirectoryKey]
> 
> let enumerator = manager.enumerator(at: directoryURL, 
> includingPropertiesForKeys: keys, options: [.skipsSubdirectoryDescendants])
> {
>       url, error -> Bool in
>       return true
> }
> 
> // this will
> while let file = enumerator?.nextObject() as? URL
> {
>       // ...
> }
> 
> 
> 
>> On 22 Oct 2016, at 20:32, Jens Alfke <j...@mooseyard.com 
>> <mailto:j...@mooseyard.com>> wrote:
>> 
>> Smells like an OS bug, or a bug in the ObjC-to-Swift bindings. Try to build 
>> a minimal test to reproduce it, i.e. narrow down which of the 
>> URLResourceKeys triggers the crash, and which specific file being returned 
>> by the enumerator. Then see what if anything is unusual about that file. 
>> Then probably file a bug report with Apple…
>> 
>> As for working around it, perhaps the resource key causing the crash is one 
>> you don’t need and can omit? (It’s hard to imagine needing all of those 
>> attributes…)
>> 
>> —Jens
> 


-----------
Jean Suisse
Institut de Chimie Moléculaire de l’Université de Bourgogne
(ICMUB) — UMR 6302


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to