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: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Gerd Möllmann <gerd.moellmann <at> gmail.com>
Subject: bug#56259: closed (Re: bug#58540: 29.0.50; While opening the font
 dialog)
Date: Sat, 12 Nov 2022 20:58:05 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#56259: 29.0.50; Illegal -layoutSubtreeIfNeeded on NS

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 56259 <at> debbugs.gnu.org.

-- 
56259: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=56259
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Stefan Kangas <stefankangas <at> gmail.com>
To: Daniel Martín <mardani29 <at> yahoo.es>
Cc: Gerd Möllmann <gerd.moellmann <at> gmail.com>,
 56259-done <at> debbugs.gnu.org, 58540-done <at> debbugs.gnu.org
Subject: Re: bug#58540: 29.0.50; While opening the font dialog
Date: Sat, 12 Nov 2022 12:57:28 -0800
Daniel Martín <mardani29 <at> yahoo.es> writes:

> tags 56259 notabug
> close 56259
> quit
>
> I think the general consensus was that this message is a bug in some
> Apple framework and not in Emacs, so I'm closing the bug report.

The bug was left open, so I'm closing it now.

[Message part 3 (message/rfc822, inline)]
From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 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.