From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#21428: 24.5; Crash of emacs on OS X, installed via homebrew cask Date: Fri, 23 Oct 2015 10:02:54 +0200 Message-ID: <5629E9AE.2090103@gmx.at> References: <83k2r8b4rr.fsf@gnu.org> <834mibbstw.fsf@gnu.org> <83k2r79bi5.fsf@gnu.org> <834mi4x7tp.fsf@gnu.org> <83fv1mellz.fsf@gnu.org> <1130CA27-B8B0-4009-BC14-A3FC76B92216@gmail.com> <838u7265sv.fsf@gnu.org> <83pp0d4rot.fsf@gnu.org> <83611yucx0.fsf@gnu.org> <831tcmu944.fsf@gnu.org> <56291DB4.3040509@gmx.at> <83y4eusswr.fsf@gnu.org> <56292795.3050100@gmx.at> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1445587467 30857 80.91.229.3 (23 Oct 2015 08:04:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 23 Oct 2015 08:04:27 +0000 (UTC) Cc: Rainer@krugs.de, 21428@debbugs.gnu.org To: Anders Lindgren Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Oct 23 10:04:16 2015 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZpXKd-0001Y5-UA for geb-bug-gnu-emacs@m.gmane.org; Fri, 23 Oct 2015 10:04:12 +0200 Original-Received: from localhost ([::1]:36873 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZpXKd-0003X8-GF for geb-bug-gnu-emacs@m.gmane.org; Fri, 23 Oct 2015 04:04:11 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46076) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZpXKZ-0003X2-Vl for bug-gnu-emacs@gnu.org; Fri, 23 Oct 2015 04:04:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZpXKU-0001xs-5F for bug-gnu-emacs@gnu.org; Fri, 23 Oct 2015 04:04:07 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:43021) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZpXKU-0001xo-2O for bug-gnu-emacs@gnu.org; Fri, 23 Oct 2015 04:04:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1ZpXKT-0000R8-Ov for bug-gnu-emacs@gnu.org; Fri, 23 Oct 2015 04:04:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 23 Oct 2015 08:04:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 21428 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: moreinfo Original-Received: via spool by 21428-submit@debbugs.gnu.org id=B21428.14455873861607 (code B ref 21428); Fri, 23 Oct 2015 08:04:01 +0000 Original-Received: (at 21428) by debbugs.gnu.org; 23 Oct 2015 08:03:06 +0000 Original-Received: from localhost ([127.0.0.1]:33729 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZpXJZ-0000Pp-NK for submit@debbugs.gnu.org; Fri, 23 Oct 2015 04:03:06 -0400 Original-Received: from mout.gmx.net ([212.227.17.22]:58331) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZpXJX-0000Ph-Nz for 21428@debbugs.gnu.org; Fri, 23 Oct 2015 04:03:04 -0400 Original-Received: from [188.22.46.151] ([188.22.46.151]) by mail.gmx.com (mrgmx103) with ESMTPSA (Nemesis) id 0Lskr7-1aUo9v2IB7-012IHV; Fri, 23 Oct 2015 10:03:02 +0200 In-Reply-To: X-Provags-ID: V03:K0:c+c2DrGd8S67wCTVV+wzsTS5qVCcJ2JhMMCdgSjDmQShnNETxxL aFThzg2V5Wm9lEKBkOUdLbHUUtla+kzg76JlXjI2MPHzVrqe61doqDU+cqKcRzrRscrOV5y OFM+CF9iNvwZvUUY7eJgvaOU7Oa6+kryOO2OUsgF0Ur5XcpczB7vSm5VPq/g75Cfc4OeqH8 Xrt+Ev/GIhHfksZzPvIQQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:zr6LYYf0PGU=:gQhMd1ycLcXu4WqV+LCGT2 X/zGp3vOFPYaDcrrRj2TcXfP5n2eSQqXITwYIcg1IVBOFZ9+oL+2wF6be0txzt0hG+2JRuFsT 46dc+g38FSFrVI90OK+bZOXic9uHTxVIXL1iN3s5Wmf1VsafHBbZJS7CCLRGm3RLoISxqsu5I B1Yv2/kV2xYFgOAVTgXgUV+24fKFCfhee84qysWqT6y8SsSFGjcV0Zmrd2NrPNzITV9yz6oL6 DA6Nj5IWEmpWUyI2LcR62E3WGN6nU0fbeNKQUwgUfICWoCX8C+4cN+eigMaqGVGnwiwfkYTt5 jCs2/VNAX7sbsX3EAjvPnQzOYqMIHVTrSW+c0/sKLCCuGcnvjN4yErIzrNbHC2c3mCyQYmYoS FjUw8E2ev7ka0OoGht4FSx/klTqbEVewjuvWTEvj6fkSk8KTa6bQSpstzpF5E5RzueY9o2FBl ovuu6/bMYrRNA1xYqQYXvEtnecYLyIFBkJINE/QO/kIIoAfq9Li3jEZZp99+2XZK/AcCiNnWt 7fucD2kPCH5fgI078T8HI/GwPYpoSUCmeQHd+JbDxk9K3yu69qPDHVSh2OCYTrbMJeRDlwoRP XliYZagCDJ+2j191KE8WSGDzc3XDM0+wXhZhsKJe2Y5MM1ol+U9Q7WseCZXOzPHWiPZpjAv8K AreqfnqkxqtKMKLX6HTLtilvlBMpFAlQdbZXGMgRWQ5yxvbgtgwRy6yThlt4vjyXN/y1pUwr/ B/gpMF6f3IQOBxEBvd2DhCx293mpmy4IZ0RBa2zKe3XVJVwRPgvqbsBpQ2Eme65mqx4ziPq3 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 208.118.235.43 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.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:107893 Archived-At: > However, I noticed that a number of NextStep callback functions start with > the following code sequence: > > if (!emacsframe->output_data.ns) > return; > > If `ns' is NULL it would account for the crash. I don't see why we can't > add it to the windowDidResize: method as well. I have no idea how threading works on OSX. Here on GNUStep making the toolbar visible in update_frame_tool_bar immediately provokes a call of windowDidResize which calls updateFrameSize with a not yet updated toolbar height some time before updateFrameSize gets properly called at the end of update_frame_tool_bar. So what _could_ happen is that we (1) Call [toolbar setVisible: YES] in update_frame_tool_bar, (2) then updateFrameSize tries to calculate extra = FRAME_NS_TITLEBAR_HEIGHT (emacsframe) + FRAME_TOOLBAR_HEIGHT (emacsframe); with an unitialized FRAME_TOOLBAR_HEIGHT for this frame, and (3) when we finally set FRAME_TOOLBAR_HEIGHT (f) = NSHeight ([window frameRectForContentRect: NSMakeRect (0, 0, 0, 0)]) - FRAME_NS_TITLEBAR_HEIGHT (f); in update_frame_tool_bar it's already too late. I have no idea how this is supposed to work: If I don't make the tool bar visible, I don't know its height. If I don't know its height, I can't make it visible. martin