objective-ciosassetslibrary

AssetsLibrary not producing failure when expected


I have this code:

ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
        [library assetForURL:albumCopy
                 resultBlock:^(ALAsset *asset)  {
                     NSLog(@"success");
                     ...
}
            failureBlock:^(NSError *error) {
                    NSLog(@"fail");
                    ...
                }];
        [library autorelease];

The problem is that when I give it an image which doesn't exist, the NSLog comes up with:

Could not find photo 1000000141
success

If this won't show me when a photo doesn't exist, how can I find out?


Solution

  • Solved it!

    ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
            [library assetForURL:albumCopy
                     resultBlock:^(ALAsset *asset)  {
                         if (asset == nil) {
                             //Image not in photo library
                         }
                         else {
                         //Image in photo library
                         }
                     }
                    failureBlock:^(NSError *error) {
                        //Error
                    }];
            [library autorelease];