[Openmcl-devel] runtime warnings
Paul Krueger
plkrueger at comcast.net
Thu Oct 13 14:51:00 PDT 2016
The theme here is caught by the "This application is modifying the autolayout engine from a background thread …” part of the messages. Over time, Apple has made more and more use of autolayout inside of its own interface objects. I (and I’m sure many others) have learned through hard experience that doing almost anything that affects the autolayout system on any thread other than the main thread is a recipe for crashes or other forms of aberrant behavior. As new versions of core libraries make more use of autolayout code for previously existing object classes, it becomes necessary for users of those objects to ensure that their code also runs on the main thread. These messages are simply informing us that this isn’t happening (which at some time in the future might turn into a runtime error) and the stack trace can help to identify the relevant code. As a matter of course I now do all interface code inside a call to ccl::call-in-event-process.
I have a little macro that makes that a bit easier for me:
(defmacro on-main-thread (&rest actions)
`(ccl::call-in-event-process
#'(lambda ()
, at actions)))
I don’t know exactly where this should be used in your case; but given when you are seeing the messages it sounds like maybe it is in the ccl code for the search window.
> On Oct 13, 2016, at 2:31 PM, Arthur Cater <arthur.cater at ucd.ie> wrote:
>
> Sorry if you’re getting tired of hearing from me.
>
> After running ./dx86cl64 —no-init and loading cocoa, same session, I was trying out Paul’s advice to tab out of the search field. After a while I noticed that the Terminal window was accumulating messages, many more than the excerpt below. Something odd, is it me?
>
> Arthur
>
> (I’ve snipped this at both ends)
>
> ;Loading #P"ccl:cocoa-ide;fasls;start.dx64fsl.newest"...
> ;Loading #P"ccl:cocoa-ide;fasls;xinspector.dx64fsl.newest"...
> :COCOA
> ("IDE-BUNDLE" "OBJC-PACKAGE" "SEQUENCE-UTILS" "NAME-TRANSLATION" "OBJC-CLOS" "OBJC-RUNTIME" "BRIDGE" "OBJC-SUPPORT" "COMPILE-HEMLOCK" "HEMLOCK" "uiop" "UIOP" "asdf" "ASDF" "COCOA")
> ? 2016-10-13 17:33:11.093 dx86cl64[54312:8154542] Failed to connect (searchCommentsCheckbox) outlet from (SearchFilesWindowController) to (NSButton): missing setter or instance variable
> CoreAnimation: warning, deleted thread with uncommitted CATransaction; set CA_DEBUG_TRANSACTIONS=1 in environment to log backtraces.
> 2016-10-13 20:21:16.012 dx86cl64[54312:8175761] This application is modifying the autolayout engine from a background thread, which can lead to engine corruption and weird crashes. This will cause an exception in a future release.
> Stack:(
> 0 CoreFoundation 0x00007fff8e4cf4f2 __exceptionPreprocess + 178
> 1 libobjc.A.dylib 0x00007fff90e57f7e objc_exception_throw + 48
> 2 CoreFoundation 0x00007fff8e5364bd +[NSException raise:format:] + 205
> 3 Foundation 0x00007fff8e0c51f1 _AssertAutolayoutOnMainThreadOnly + 79
> 4 Foundation 0x00007fff8e0c5046 -[NSISEngine withBehaviors:performModifications:] + 31
> 5 AppKit 0x00007fff936ba05e -[NSWindow(NSConstraintBasedLayout) _fromConstraintsGetWindowMinSize:maxSize:allowDynamicLayout:] + 568
> 6 AppKit 0x00007fff936b9d9b -[NSWindow(NSConstraintBasedLayout) _getConstrainedWindowMinSize:maxSize:] + 47
> 7 AppKit 0x00007fff936dd731 -[NSWindow(NSWindowResizing) _resizableEdgesForGrowing:shrinking:] + 171
> 8 AppKit 0x00007fff936dcd95 -[NSWindow(NSWindowResizing) _getEdgeResizingRects:] + 439
> 9 AppKit 0x00007fff936dcadd -[NSTitledFrame regionForOpaqueDescentsModifiedForResizing:] + 119
> 10 AppKit 0x00007fff936ddd97 -[NSTitledFrame _regionForOpaqueDescendants:forMove:forUnderTitlebar:] + 143
> 11 AppKit 0x00007fff936db007 -[NSThemeFrame _regionForOpaqueDescendants:forMove:forUnderTitlebar:] + 227
> 12 AppKit 0x00007fff936daf1c -[NSView _regionForOpaqueDescendants:forMove:] + 58
> 13 AppKit 0x00007fff937c84c2 -[NSView(NSWindowBorderView) _copyDragRegion] + 115
> 14 AppKit 0x00007fff937c8338 -[NSFrameView _resetDragMargins] + 160
> 15 AppKit 0x00007fff936d9913 -[NSThemeFrame _resetDragMargins] + 221
> 16 AppKit 0x00007fff936c3f16 -[NSThemeFrame _tileTitlebarAndRedisplay:] + 287
> 17 AppKit 0x00007fff93726baf -[NSTitledFrame _titleDidChange] + 217
> 18 AppKit 0x00007fff937264fe -[NSTitledFrame setTitle:] + 1205
> 19 AppKit 0x00007fff93725f9c -[NSThemeFrame setTitle:] + 47
> 20 AppKit 0x00007fff93725daa -[NSWindow _dosetTitle:andDefeatWrap:] + 319
> 21 dx86cl64 0x000000000001bbf3 ffcall_return + 0
> )
> 2016-10-13 20:21:16.013 dx86cl64[54312:8175761] This application is modifying the autolayout engine from a background thread, which can lead to engine corruption and weird crashes. This will cause an exception in a future release.
> Stack:(
> 0 CoreFoundation 0x00007fff8e4cf4f2 __exceptionPreprocess + 178
> 1 libobjc.A.dylib 0x00007fff90e57f7e objc_exception_throw + 48
> 2 CoreFoundation 0x00007fff8e5364bd +[NSException raise:format:] + 205
> 3 Foundation 0x00007fff8e0c51f1 _AssertAutolayoutOnMainThreadOnly + 79
> 4 Foundation 0x00007fff8e0c5046 -[NSISEngine withBehaviors:performModifications:] + 31
> 5 AppKit 0x00007fff9375286b __97-[NSWindow(NSConstraintBasedLayout) _fromConstraintsGetWindowMinSize:maxSize:allowDynamicLayout:]_block_invoke + 282
> 6 Foundation 0x00007fff8e0c50c2 -[NSISEngine withBehaviors:performModifications:] + 155
> 7 AppKit 0x00007fff936ba05e -[NSWindow(NSConstraintBasedLayout) _fromConstraintsGetWindowMinSize:maxSize:allowDynamicLayout:] + 568
> 8 AppKit 0x00007fff936b9d9b -[NSWindow(NSConstraintBasedLayout) _getConstrainedWindowMinSize:maxSize:] + 47
> 9 AppKit 0x00007fff936dd731 -[NSWindow(NSWindowResizing) _resizableEdgesForGrowing:shrinking:] + 171
> 10 AppKit 0x00007fff936dcd95 -[NSWindow(NSWindowResizing) _getEdgeResizingRects:] + 439
> 11 AppKit 0x00007fff936dcadd -[NSTitledFrame regionForOpaqueDescentsModifiedForResizing:] + 119
> 12 AppKit 0x00007fff936ddd97 -[NSTitledFrame _regionForOpaqueDescendants:forMove:forUnderTitlebar:] + 143
> 13 AppKit 0x00007fff936db007 -[NSThemeFrame _regionForOpaqueDescendants:forMove:forUnderTitlebar:] + 227
> 14 AppKit 0x00007fff936daf1c -[NSView _regionForOpaqueDescendants:forMove:] + 58
> 15 AppKit 0x00007fff937c84c2 -[NSView(NSWindowBorderView) _copyDragRegion] + 115
> 16 AppKit 0x00007fff937c8338 -[NSFrameView _resetDragMargins] + 160
> 17 AppKit 0x00007fff936d9913 -[NSThemeFrame _resetDragMargins] + 221
> 18 AppKit 0x00007fff936c3f16 -[NSThemeFrame _tileTitlebarAndRedisplay:] + 287
> 19 AppKit 0x00007fff93726baf -[NSTitledFrame _titleDidChange] + 217
> 20 AppKit 0x00007fff937264fe -[NSTitledFrame setTitle:] + 1205
> 21 AppKit 0x00007fff93725f9c -[NSThemeFrame setTitle:] + 47
> 22 AppKit 0x00007fff93725daa -[NSWindow _dosetTitle:andDefeatWrap:] + 319
> 23 dx86cl64 0x000000000001bbf3 ffcall_return + 0
> )
> 2016-10-13 20:21:16.015 dx86cl64[54312:8175761] This application is modifying the autolayout engine from a background thread, which can lead to engine corruption and weird crashes. This will cause an exception in a future release.
> Stack:(
> 0 CoreFoundation 0x00007fff8e4cf4f2 __exceptionPreprocess + 178
> 1 libobjc.A.dylib 0x00007fff90e57f7e objc_exception_throw + 48
> 2 CoreFoundation 0x00007fff8e5364bd +[NSException raise:format:] + 205
> 3 Foundation 0x00007fff8e0c51f1 _AssertAutolayoutOnMainThreadOnly + 79
> 4 Foundation 0x00007fff8e0cbf54 -[NSISEngine optimize] + 49
> 5 Foundation 0x00007fff8e0c511b -[NSISEngine withBehaviors:performModifications:] + 244
>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> https://lists.clozure.com/mailman/listinfo/openmcl-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20161013/d00e36cb/attachment.htm>
More information about the Openmcl-devel
mailing list