On Aug 27, 2009, at 04:34, Graham Cox wrote:

I'm using the following code to generate thumbnail images in one of my user interfaces. It works fine on my machine, and on all the ones I've tested, but a couple of users have reported that they don't see the thumbnails. One user experiencing this problem helped me to log some results which shows that the QLThumbnailImageCreate function is returning nil. The docs state that this will return nil if it can't read the file, but it's the exact same file on every system, loaded from my app's resources. So why would it fail in a few percent of cases, but mostly work? All affected users are running the latest system version.


CFURLRef url = CFURLCreateWithFileSystemPath( NULL, (CFStringRef) [self path], kCFURLPOSIXPathStyle, NO );

// logging the URL/path at this point shows that the correct path is being returned from [self path], a path to app internal resources
        
        CGSize  maxImageSize = CGSizeMake( 512, 512 );
NSDictionary* options = [NSDictionary dictionaryWithObjectsAndKeys: (id)kCFBooleanTrue, kQLThumbnailOptionIconModeKey, nil];
        
CGImageRef qli = QLThumbnailImageCreate( NULL, url, maxImageSize, (CFDictionaryRef)options );
        CFRelease( url );
        
        // on a very few systems, qli is nil here

a. It would be worth trying to read the file directly, before calling QLThumbnailImageCreate, to find out if the problem is the reference to the file or the image creation.

b. What file system is being used on the Macs where it fails? I don't know much about such things, but it seems at least theoretically possible that there might be a capabilities mismatch between the file system and QL.

FWIW

_______________________________________________

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

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

Reply via email to