Correct on all counts. Especially the "cruel" part. :-)

(I actually had already realized the real reason calling release was wrong, but 
hadn't removed that line of code yet.)

Thanks,
        Howard

On Mar 8, 2012, at 12:47 PM, Mike Abdullah wrote:

> Time for me to be cruel and pick apart your code.
> 
> On 8 Mar 2012, at 18:10, Howard Moon wrote:
> 
>> Hmmm... I'm building a VST3/vstgui4 plug-in, and I think the base SDK and 
>> deployment targets are set as required, like this:
>> 
>> SDKROOT = macosx10.5
>> SDKROOT[arch=x86_64] = $(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk
>> 
>> When I build either a 32-bit or 64-bit build, while running on 10.6, it 
>> executes -setDirectoryURL with no problems.  I haven't tried running in 10.5 
>> yet.
>> 
>> Can I keep my above settings, but do this?
>> 
>>      if ([openPanel respondsToSelector:@selector(setDirectory)])
> 
> -setDirectory: is available on all OS releases. Just because it has been 
> deprecated does not stop it existing! You want to test the -setDirectoryURL: 
> selector instead.
> 
>>              [openPanel setDirectory:nsParentPath];
>>      else
>>      {
>>              NSURL*  nsParentURL             = [NSURL 
>> fileURLWithPath:nsParentPath isDirectory:YES];
>>              [openPanel setDirectoryURL:nsParentURL];
>>              //[nsParentURL release]; // No...crashes! must be used by panel
> 
> That you have this code/comment shows you clearly don't understand Cocoa 
> memory management yet. Please, please, please re-read the docs and take the 
> time to understand it. That line of code crashing has NOTHING to do with the 
> open panel.
>>      }
> 
> 
> 


_______________________________________________

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