On Aug 25, 2012, at 4:26 AM, Mike Abdullah <cocoa...@mikeabdullah.net> wrote:
> On 25 Aug 2012, at 06:03 AM, Jens Alfke <j...@mooseyard.com> wrote: > >> >> On Aug 24, 2012, at 8:59 PM, koko <k...@highrolls.net> wrote: >> >>> Excellent … much easier than >> >> Well, in Carbon's defense, you're making things a lot harder than they have >> to be: >> >>> if(m_FSRef) free((void*)m_FSRef); >>> m_FSRef = malloc(sizeof(FSRef)); >> >> FSRefs don't have to be allocated on the heap. They're just structs. (Ditto >> with the FSCatalogInfo you use later.) >> >>> memset(m_FSRef,0x00,sizeof(FSRef)); >> >> There's no need to zero one out before initializing it. >> >>> const UInt8 *cpath = (const UInt8 *)[path >>> cStringUsingEncoding:NSUTF8StringEncoding]; >> >> -UTF8String is shorter. >> >> So you can reduce all the quoted stuff to one line: >> >> OSStatus osStatus = FSPathMakeRef((const UInt8 *)[path UTF8String], >> &m_FSRef, false); >> >> assuming you declare m_FSRef as an FSRef, not FSRef*. > > I think you should use-fileSystemRepresentation instead of -UTF8String too, > but not 100% sure -fileSystemRepresentation is indeed the correct thing to use here. However, I'd recommend using CFURLGetFSRef() instead of FSPathMakeRef(), so that you can keep your code URL-based instead of path-based as much as possible. Charles _______________________________________________ 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