From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Po Lu via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#59794: 29.0.60; NSport segfaults when a fullscreen frame is being closed Date: Sat, 03 Dec 2022 18:08:56 +0800 Message-ID: <87r0xgre87.fsf@yahoo.com> References: Reply-To: Po Lu Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="11634"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: 59794@debbugs.gnu.org To: Kai Ma Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Dec 03 11:10:26 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p1PTT-0002qF-Vn for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 03 Dec 2022 11:10:24 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p1PTA-0007bX-4A; Sat, 03 Dec 2022 05:10:04 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p1PT8-0007b9-OZ for bug-gnu-emacs@gnu.org; Sat, 03 Dec 2022 05:10:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1p1PT8-0006ed-GI for bug-gnu-emacs@gnu.org; Sat, 03 Dec 2022 05:10:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1p1PT7-0007WM-W6 for bug-gnu-emacs@gnu.org; Sat, 03 Dec 2022 05:10:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Po Lu Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 03 Dec 2022 10:10:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 59794 X-GNU-PR-Package: emacs Original-Received: via spool by 59794-submit@debbugs.gnu.org id=B59794.167006216028892 (code B ref 59794); Sat, 03 Dec 2022 10:10:01 +0000 Original-Received: (at 59794) by debbugs.gnu.org; 3 Dec 2022 10:09:20 +0000 Original-Received: from localhost ([127.0.0.1]:51517 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p1PSR-0007Vw-U9 for submit@debbugs.gnu.org; Sat, 03 Dec 2022 05:09:20 -0500 Original-Received: from sonic303-21.consmr.mail.ne1.yahoo.com ([66.163.188.147]:34446) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p1PSO-0007Vq-8j for 59794@debbugs.gnu.org; Sat, 03 Dec 2022 05:09:18 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1670062148; bh=iezTSD3v7cqk+OwJ2JOJT6ckTUNAcd/NLzEbQGaTEPU=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To; b=gs/kpC0sPndam18mZJJQK/PWEM0OsdG67TqFsz0QD5meIonqvA0PxMvFH1soAcSiS7MHb5IzcB9JM6CbT4U2OsAVTanB4py+Q++H2HmlY6rYIz4HTVRPwzB+j+0Xjmc+NqxOdQWhL+KlgCXkt0pgbBtPxmzre5BkNcbBVx7QDKcUdPfu9JpNltuPjW6xlZEgfXt5T1GzV1uIBRo7jK9PpYWpUhwiZLkqI4+8X94h5TMXEcwWU6SKiPmJW/y3w+TDwoQkJdnaegDmGxX96LjGtSlgFBjgkez9u6NYarY0QPmJ1aLYkj0u6Smedx1PUdQ0YRAPqSh6my1ndhrcj/vqbA== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1670062148; bh=HtGkKEk2JmBcSkEd53239mlhHujGtXl42h8J8bSNykQ=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=UeICJu2UlY7nyAN8qE2e71HfD2SLklnE+musZYTUMh8CrbxlyS6x3pppBEkh/8M3Mw2u3Kr9XdSWWRdJn5b41Sq/4bG+NJpt85twJk2WupkHsb/2FLMZm/xPZZJLAoC48W7CNnQr8aivK9T59ekxZ14gFi4dErs/PxbhHse5hCXCOsrESHD69PVrOWc7huHIe0TfbESvNK/0tTvv3r6WX4tWYtvMz3yE8N27h8vJlwxN1eibMm8hLbVFVPyiyrisKLYTXC9jPhLho4/uFjJgkbHV7SPQ+9HAA/ctR+lEtp+v9+bhqmU9B60e7sndUEiruFmDBYbs6w3lK5wdOVhWSw== X-YMail-OSG: SBagoMMVM1mhzKYsR5vHn81WTxjosR_tl_THDy4V4QxB10eoYCO3E402kXdMJA9 8m.8oQVFDhYRh03WM5qRnncYgbcvfLSGlgQqTSoDGGbDRedeyUuykxGToDZKOtqBoBX6cktbwir9 j0xoAM8__Q4aTa9s85uPEy5O9pkZes35uFDZJWKx3jJ3.baOByjhegyde.vXTGxzhecmVQdFCM_B FjTKHZ1mopaLw2gaJCjpO1BY47abVbJJ2EojtR.yLeRB46W8SlzgjgDi60oIhMIT9zd_pDe5DDo4 eqnjd.zMDKojAfm9piImDJ6P.81kXGEejK2Ej9LzpgtHNHb0mFNRmW9D_ux2RunKYa_axnf5vQCV Vf7hZzOxr_6pmEPhaHjuESWhQXih6pudwq.iu8SPupPgNXRVQwIUe0MHAJ1b_kO7LBGwF7pcl5wN dBLu08PI0bzDByCrGgqyASxWwK1MLRRI0sYaZMc5V3Jwm0p.rRKVj6Rh_6qTNMCHI.nei77fZc13 M0Y5HqzdDERtYMJMA8.wRMshSdKEFhJyZuOMKlnyo75mlIdPyvzVloz9A6QWdQcQTsQpB0c6lT41 vvGrqxiZxFAVvMlM..hbTC0r4lVQkNjz8pRqUcV20dOdnXqguf5WCHrGx2ufbnnj6.ghUqgKzH_s _uVxkbvYDXhqV90BKp4BJeCQt.NVjRgmMlB1dESk7wdc4eX4zBhWQ.dEPFYJFdk01rIOJj9XL4dh .1VctCpQIr8lKc8zVfOvo1cKrkClYp9BanXCCPmQLpRk1WPxbSWax4IcwQL13CfjNT.sHFDtSUhQ qZoj2xGCFL5OHq0nY0jPTWztwfgkWDRe8.1wYzNoue X-Sonic-MF: Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic303.consmr.mail.ne1.yahoo.com with HTTP; Sat, 3 Dec 2022 10:09:08 +0000 Original-Received: by hermes--production-sg3-b666c6484-4bg7k (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID e8640fcaece3c31795a798b3f822bc5e; Sat, 03 Dec 2022 10:09:02 +0000 (UTC) In-Reply-To: (Kai Ma's message of "Fri, 02 Dec 2022 20:01:31 +0800") X-Mailer: WebService/1.1.20926 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:249820 Archived-At: Kai Ma writes: > Emacs segfaults when a fullscreen frame is being deleted. > > Steps to reproduce on emacs -Q: > > 1. Launch an emacs instance. The default frame should be in the window > mode for now. > > 2. C-x 5 2 > > 3. In the new frame, M-x toggle-frame-fullscreen. > > 4. In the new frame, C-x 5 0 to delete the frame. > > Emacs then segfaults. > > LLDB trace: > > * thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0xc0) > frame #0: 0x0000000100238ed5 emacs`-[EmacsView resetCursorRects](self=0x0000000102e3ddd0, _cmd=) at nsterm.m:6707:29 [opt] > 6704 - (void)resetCursorRects > 6705 { > 6706 NSRect visible = [self visibleRect]; > -> 6707 NSCursor *currentCursor = FRAME_POINTER_TYPE (emacsframe); > 6708 NSTRACE ("[EmacsView resetCursorRects]"); > 6709 > 6710 if (currentCursor == nil) > Target 0: (emacs) stopped. > warning: emacs was compiled with optimization - stepping may behave oddly; variables may not be available. > (lldb) bt > * thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0xc0) > * frame #0: 0x0000000100238ed5 emacs`-[EmacsView resetCursorRects](self=0x0000000102e3ddd0, _cmd=) at nsterm.m:6707:29 [opt] > frame #1: 0x00007ff819be1b95 AppKit`-[_NSTrackingAreaAKViewHelper updateTrackingAreasWithInvalidCursorRects:] + 357 > frame #2: 0x00007ff819e520f0 AppKit`_NSViewSubViewMutationSafeApply + 227 > frame #3: 0x00007ff819be1c53 AppKit`-[_NSTrackingAreaAKViewHelper updateTrackingAreasWithInvalidCursorRects:] + 547 > frame #4: 0x00007ff819e520f0 AppKit`_NSViewSubViewMutationSafeApply + 227 > frame #5: 0x00007ff819be1c53 AppKit`-[_NSTrackingAreaAKViewHelper updateTrackingAreasWithInvalidCursorRects:] + 547 > frame #6: 0x00007ff819bdfddf AppKit`-[_NSTrackingAreaAKManager displayCycleUpdateStructuralRegions] + 227 > frame #7: 0x00007ff8195f4a84 AppKit`__NSWindowGetDisplayCycleObserverForUpdateStructuralRegions_block_invoke + 390 > frame #8: 0x00007ff8195ef701 AppKit`NSDisplayCycleObserverInvoke + 142 > frame #9: 0x00007ff8195ef331 AppKit`NSDisplayCycleFlush + 878 > frame #10: 0x00007ff81de68f46 QuartzCore`CA::Transaction::run_commit_handlers(CATransactionPhase) + 98 > frame #11: 0x00007ff81de67a10 QuartzCore`CA::Transaction::commit() + 380 > frame #12: 0x00007ff81968cedf AppKit`__62+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayLink]_block_invoke + 285 > frame #13: 0x00007ff819ea3513 AppKit`___NSRunLoopObserverCreateWithHandler_block_invoke + 41 > frame #14: 0x00007ff81640d0e2 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 > frame #15: 0x00007ff81640d00a CoreFoundation`__CFRunLoopDoObservers + 482 > frame #16: 0x00007ff81640c590 CoreFoundation`__CFRunLoopRun + 870 > frame #17: 0x00007ff81640bbb0 CoreFoundation`CFRunLoopRunSpecific + 560 > frame #18: 0x00007ff81fcedbd6 HIToolbox`RunCurrentEventLoopInMode + 292 > frame #19: 0x00007ff81fced9e6 HIToolbox`ReceiveNextEventCommon + 679 > frame #20: 0x00007ff81fced723 HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 70 > frame #21: 0x00007ff81952eb37 AppKit`_DPSNextEvent + 909 > frame #22: 0x00007ff81952d9b8 AppKit`-[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1219 > frame #23: 0x00007ff81951fff3 AppKit`-[NSApplication run] + 586 > frame #24: 0x000000010023680d emacs`-[EmacsApp run](self=0x0000000102e09540, _cmd=) at nsterm.m:5818:7 [opt] > frame #25: 0x0000000100235395 emacs`ns_select_1(nfds=0, readfds=0x00007ff7bfefdcb0, writefds=0x00007ff7bfefdc00, exceptfds=0x0000000000000000, timeout=0x00007ff7bfefddb0, sigmask=0x0000000000000000, run_loop_only=NO) at nsterm.m:4833:3 [opt] > frame #26: 0x0000000100234f54 emacs`ns_select(nfds=, readfds=, writefds=, exceptfds=, timeout=, sigmask=) at nsterm.m:4885:10 [opt] This time I cannot reproduce the bug on GNUstep. It looks as if a reference to the EmacsFrame is being kept even after the frame has been destroyed. Would someone who knows what `NSView resetCursorRects' does in Mac OS speak up?