GNU bug report logs - #56259
29.0.50; Illegal -layoutSubtreeIfNeeded on NS

Previous Next

Package: emacs;

Reported by: Gerd Möllmann <gerd.moellmann <at> gmail.com>

Date: Mon, 27 Jun 2022 14:23:01 UTC

Severity: normal

Tags: notabug

Merged with 58540

Found in version 29.0.50

Done: Stefan Kangas <stefankangas <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
To: 56259 <at> debbugs.gnu.org
Subject: bug#56259: 29.0.50; Illegal -layoutSubtreeIfNeeded on NS
Date: Mon, 27 Jun 2022 16:22:31 +0200
On macOS 12.4, selecting Options -> Set Default Font from the menu bar 
reproducibly prints a message to the terminal:

emacs[76309:7042282] It's not legal to call -layoutSubtreeIfNeeded on
a view which is already being laid out.  If you are implementing the
view's -layout method, you can call -[super layout] instead. Break on
void _NSDetectedLayoutRecursion(void) to debug.  This will be logged
only once.  This may break in the future.

Hopefully nobody get's sued because of that illegal action...

Backtrace from lldb:

 * frame #0: 0x000000019e2f5f40 AppKit`_NSDetectedLayoutRecursion
    frame #1: 0x000000019dac4148 AppKit`-[NSWindow(NSConstraintBasedLayout) _layoutViewTree] + 148
    frame #2: 0x000000019dac11d0 AppKit`-[NSWindow _oldPlaceWindow:fromServer:] + 584
    frame #3: 0x000000019dac0050 AppKit`-[NSWindow _setFrameCommon:display:fromServer:] + 2220
    frame #4: 0x000000019db854cc AppKit`-[NSThemeFrame _growWindowReshapeContentAndToolbarView:withOldToolbarFrameSize:animate:] + 1232
    frame #5: 0x000000019db84ddc AppKit`-[NSThemeFrame _reshapeContentAndToolbarView:withOldToolbarFrameSize:resizeWindow:animate:] + 300
    frame #6: 0x000000019db738bc AppKit`-[NSThemeFrame _toolbarFrameSizeChanged:oldSize:] + 76
    frame #7: 0x000000019db737f4 AppKit`-[NSWindow _toolbarFrameSizeChanged:oldSize:] + 96
    frame #8: 0x000000019db68870 AppKit`-[NSToolbarView _layoutDirtyItemViewersAndTileToolbar] + 428
    frame #9: 0x000000019db8b114 AppKit`-[NSToolbarView layout] + 88
    frame #10: 0x000000019dac5700 AppKit`_NSViewLayout + 688
    frame #11: 0x000000019dac5178 AppKit`-[NSView _layoutSubtreeWithOldSize:] + 380
    frame #12: 0x000000019dac52e4 AppKit`-[NSView _layoutSubtreeWithOldSize:] + 744
    frame #13: 0x000000019dac52e4 AppKit`-[NSView _layoutSubtreeWithOldSize:] + 744
    frame #14: 0x000000019dac52e4 AppKit`-[NSView _layoutSubtreeWithOldSize:] + 744
    frame #15: 0x000000019dac4600 AppKit`-[NSView _layoutSubtreeIfNeededAndAllowTemporaryEngine:] + 996
    frame #16: 0x000000019dac4148 AppKit`-[NSWindow(NSConstraintBasedLayout) _layoutViewTree] + 148
    frame #17: 0x000000019db3b8ec AppKit`-[NSWindow(NSConstraintBasedLayout) layoutIfNeeded] + 308
    frame #18: 0x000000019dba7388 AppKit`-[NSWindow _setUpFirstResponderBeforeBecomingVisible] + 84
    frame #19: 0x000000019dba6750 AppKit`-[NSWindow _doWindowWillBeVisibleAsSheet:] + 164
    frame #20: 0x000000019dba507c AppKit`-[NSWindow _reallyDoOrderWindowAboveOrBelow:relativeTo:findKey:forCounter:force:isModal:] + 1232
    frame #21: 0x000000019dba4790 AppKit`-[NSWindow _reallyDoOrderWindow:relativeTo:findKey:forCounter:force:isModal:] + 132
    frame #22: 0x000000019dba377c AppKit`-[NSWindow _doOrderWindow:relativeTo:findKey:forCounter:force:isModal:] + 324
    frame #23: 0x000000010088d424 emacs`-[EmacsView showFontPanel](self=0x0000000108431400, _cmd="showFontPanel") at nsterm.m:6585:3
    frame #24: 0x000000010090d670 emacs`Fx_select_font(frame=0x0000000000000000, ignored=0x0000000000000000) at nsfns.m:1662:22

A related bug might be bug#53481 (status done, fixed by Alan Third).




This bug report was last modified 2 years and 197 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.