From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Reitter Newsgroups: gmane.emacs.devel Subject: crashes during Feval from within WINDOW_WANTS_HEADER_LINE_P Date: Sat, 1 Mar 2008 12:03:37 +0000 Message-ID: <76EEBC00-5E78-4BC8-8AE6-8D657F71E94E@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (Apple Message framework v919.2) Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1204373042 25973 80.91.229.12 (1 Mar 2008 12:04:02 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 1 Mar 2008 12:04:02 +0000 (UTC) To: emacs- devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Mar 01 13:04:28 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JVQS0-0003zQ-09 for ged-emacs-devel@m.gmane.org; Sat, 01 Mar 2008 13:04:24 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JVQRT-00028z-BY for ged-emacs-devel@m.gmane.org; Sat, 01 Mar 2008 07:03:51 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JVQRN-000289-8L for emacs-devel@gnu.org; Sat, 01 Mar 2008 07:03:45 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JVQRL-00027d-Eb for emacs-devel@gnu.org; Sat, 01 Mar 2008 07:03:44 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JVQRL-00027U-7u for emacs-devel@gnu.org; Sat, 01 Mar 2008 07:03:43 -0500 Original-Received: from ug-out-1314.google.com ([66.249.92.172]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JVQRK-000640-PH for emacs-devel@gnu.org; Sat, 01 Mar 2008 07:03:42 -0500 Original-Received: by ug-out-1314.google.com with SMTP id a2so840261ugf.48 for ; Sat, 01 Mar 2008 04:03:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:from:to:content-type:content-transfer-encoding:mime-version:subject:date:x-mailer; bh=gDzAovZscpxrhDvIpZnbDYnvBiqTZnadQEEPJc41Mms=; b=o516eaew624JTOndPW+Z/qPe5Uz89goJMJsR7xWNhXRxg+xsxYwUK1BNnOBWbpeAbSrU2ir1X8jXRg60LUJvLSBCaFU3IS6uNZtX/F9EgAcjdtSm2WOq/szvISNFZl6z2WdO/tZwnb/IRslsI0jwIPqYbBfRlLhg0mQAXqdN15s= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:from:to:content-type:content-transfer-encoding:mime-version:subject:date:x-mailer; b=Q4tl4IyArlFsADOhoJr64ndI15D2klWzjHdvkbumzFLJAB15ctSSExUd6DKlBV/vpC6q26rQEbvahfYUIpkSo9SHdSeD3VqrkuEGrDixF4I7ivgt8mRKgCTLfY0XFQorVhjcyPDu+9z3+gW/i2prLcwcYzGuZM6HcxjEQvxCdYs= Original-Received: by 10.78.21.7 with SMTP id 7mr10969325huu.6.1204373020357; Sat, 01 Mar 2008 04:03:40 -0800 (PST) Original-Received: from scarlett.inf.ed.ac.uk ( [129.215.174.113]) by mx.google.com with ESMTPS id i7sm5982190nfh.14.2008.03.01.04.03.39 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 01 Mar 2008 04:03:39 -0800 (PST) X-Mailer: Apple Mail (2.919.2) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:90981 Archived-At: I'm getting crashes after extending a macro. I would appreciate your help. I have added to the WINDOW_WANTS_HEADER_LINE_P macro (dispextern.h) a function call to an elisp function whose name is stored in `window- wants-header-line-function': && (NILP(Vwindow_wants_header_line_function) || \ !NILP (safe_call_win(Vwindow_wants_header_line_function, (W))))) safe_call_win looks pretty straight-forward: /* Call function FN with window argument. Return the result, or nil if something went wrong. */ Lisp_Object safe_call_win (fn, w) Lisp_Object fn; struct window *w; { Lisp_Object window; Lisp_Object val; struct gcpro gcpro1; val = Qnil; window = Qnil; if ((FUNCTIONP (fn))) { XSETWINDOW (window, w); GCPRO1 (window); val = safe_call1 (fn, window); UNGCPRO; } return val; } However, I keep getting crashes, always during the evaluation of said function: 5 libSystem.B.dylib 0x966639af abort + 73 6 org.gnu.Emacs 0x000f320b Feval + 923 (eval.c:2362) 7 org.gnu.Emacs 0x000f360f Fprogn + 63 (eval.c:450) 8 org.gnu.Emacs 0x000f38df funcall_lambda + 671 (eval.c:3185) 9 org.gnu.Emacs 0x000f3c2b Ffuncall + 443 (eval.c: 3062) 10 org.gnu.Emacs 0x000f1f3a internal_condition_case_2 + 266 (eval.c:1583) 11 org.gnu.Emacs 0x0001717e safe_call + 158 (xdisp.c: 2348) 12 org.gnu.Emacs 0x000171c5 safe_call1 + 37 (xdisp.c: 2362) 13 org.gnu.Emacs 0x00017278 safe_call_win + 168 (xdisp.c:2382) 14 org.gnu.Emacs 0x0016cc4b draw_fringe_bitmap_1 + 1467 (fringe.c:669) 15 org.gnu.Emacs 0x0016cf2a draw_fringe_bitmap + 90 (fringe.c:868) The elisp function that is called just evaluates to nil or t and doesn't do anything else. (It does work in some cases.) The crashes do not depend on the `window' argument, and they do not go away if I play around with the GCPRO call or an additional BLOCK_INPUT. What's going on?