In a new app (not document based) I inserted: #import "ZipProtocol.h"
// ZipProtocol.h: @protocol ZipProtocol <NSObject> - (void)command:(NSString *)command withReply: (void (^)( NSString *answerString ))reply; @end #define MAGIC_BUG_REMOVAL // defined or not - makes a strange difference - (void)applicationDidFinishLaunching:(NSNotification *)aNotification { NSString *helperName = @"something.very.silly"; NSXPCConnection *aCo = [[NSXPCConnection alloc] initWithMachServiceName: helperName options: 0 ]; if ( aCo == nil) // error { NSLog(@"%s Error NSXPCConnection",__FUNCTION__); return ; }; #ifdef MAGIC_BUG_REMOVAL NSLog(@"%s will use magic - you will see MAGIC_ERROR",__FUNCTION__); #else NSLog(@"%s without magic - you will NOT see MAGIC_ERROR",__FUNCTION__); #endif aCo.remoteObjectInterface = [ NSXPCInterface interfaceWithProtocol: @protocol(ZipProtocol) ]; [ aCo resume]; // can do magic here id <ZipProtocol> ree; ree = [ aCo remoteObjectProxyWithErrorHandler: ^(NSError *err) { // if helperName is not running (always the case) and // MAGIC_BUG_REMOVAL is NOT defined, then the next line will never print: NSLog(@"%s MAGIC_ERROR: %@",__FUNCTION__, err); } ]; if ( ree == nil) // error { NSLog(@"%s Error remoteObjectProxy",__FUNCTION__); return; }; // can do magic here as well: #ifdef MAGIC_BUG_REMOVAL NSLog(@"%s will use magic",__FUNCTION__); #endif [ ree command: @"a command" withReply: ^( NSString *answerString ) { NSLog(@"%s the reply block %@",__FUNCTION__, answerString ); [ aCo invalidate]; } ]; NSLog(@"%s did send",__FUNCTION__); } The question: why does the fact whether MAGIC_BUG_REMOVAL is defined or not makes any difference? Seems not to depend on optimisation - same for Debug and Release builds. Probably there is a very simple answer, but I just cannot see it. 10.8.5 The latest and still very secret Xcode. Gerriet. _______________________________________________ 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