In Mac app, a Preferences window nib contains an object controller in Entity mode, which is bound to the managed object context of a Core Data document. I realize this is kind of haywired, but please just accept that real life is sometimes a little messy.
In normal operation, a document is always open. But if a document cannot be opened, and if user opens Preferences during the dialog warning of this failure, of course, that binding fails. The controls which are bound to the unavailable managed object context via the object controller are disabled; other controls work OK. That’s good. The only problem is that the message and stack trace from an exception (see below) are logged. Can anyone think of a way to prevent the logging of this? The stack trace appears to be all Apple non-public API, and this little issue is not worth a hack. I don’t want to disable opening of the Preferences window until a document is available, because that would be illogical and overkill, and the user may want to peek at prefs for some reason. Thanks Jerry Krinock 2014-04-10 14:44:09.937 Testy[4544:303] Cannot perform operation without a managed object context 2014-04-10 14:44:09.945 Testy[4544:303] ( 0 CoreFoundation 0x00007fff91cfa25c __exceptionPreprocess + 172 1 libobjc.A.dylib 0x00007fff8b33ae75 objc_exception_throw + 43 2 CoreFoundation 0x00007fff91cfa10c +[NSException raise:format:] + 204 3 AppKit 0x00007fff8cabf703 -[_NSManagedProxy _managedObjectContext] + 66 4 AppKit 0x00007fff8cabf67c -[_NSManagedProxy _persistentStoreCoordinator] + 22 5 AppKit 0x00007fff8cabf5f9 -[_NSManagedProxy _entity] + 46 6 AppKit 0x00007fff8cabf515 -[_NSManagedProxy fetchRequestWithSortDescriptors:limit:] + 95 7 AppKit 0x00007fff8cd0f8fb -[NSObjectController(NSManagedController) _executeFetch:didCommitSuccessfully:actionSender:] + 73 8 AppKit 0x00007fff8ceea846 _NSSendCommitEditingSelector + 267 9 AppKit 0x00007fff8cb93f78 -[NSController _controllerEditor:didCommit:contextInfo:] + 182 10 CoreFoundation 0x00007fff91be5a5c __invoking___ + 140 11 CoreFoundation 0x00007fff91be58c4 -[NSInvocation invoke] + 308 12 CoreFoundation 0x00007fff91c88516 -[NSInvocation invokeWithTarget:] + 54 13 Foundation 0x00007fff8dd6dcb7 __NSFireDelayedPerform + 333 14 CoreFoundation 0x00007fff91c61494 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20 15 CoreFoundation 0x00007fff91c60fcf __CFRunLoopDoTimer + 1151 16 CoreFoundation 0x00007fff91cd25aa __CFRunLoopDoTimers + 298 17 CoreFoundation 0x00007fff91c1c755 __CFRunLoopRun + 1525 18 CoreFoundation 0x00007fff91c1bf25 CFRunLoopRunSpecific + 309 19 HIToolbox 0x00007fff89443a0d RunCurrentEventLoopInMode + 226 20 HIToolbox 0x00007fff894437b7 ReceiveNextEventCommon + 479 21 HIToolbox 0x00007fff894435bc _BlockUntilNextEventMatchingListInModeWithFilter + 65 22 AppKit 0x00007fff8c75226e _DPSNextEvent + 1434 23 AppKit 0x00007fff8c7518bb -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122 24 AppKit 0x00007fff8c7459bc -[NSApplication run] + 553 25 AppKit 0x00007fff8c7307a3 NSApplicationMain + 940 26 Testy 0x00000001000027bf main + 367 27 Testy 0x0000000100001b34 start + 52 28 ??? 0x0000000000000003 0x0 + 3 ) _______________________________________________ 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