From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: Possible bug in xfns.c Date: Sun, 27 Feb 2005 08:43:10 -0500 Message-ID: References: <6caafaac432f7e0ccd0d7659af49040d@swipnet.se> Reply-To: rms@gnu.org NNTP-Posting-Host: main.gmane.org X-Trace: sea.gmane.org 1109511789 32349 80.91.229.2 (27 Feb 2005 13:43:09 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sun, 27 Feb 2005 13:43:09 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Feb 27 14:43:09 2005 Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1D5OhL-0006r7-OW for ged-emacs-devel@m.gmane.org; Sun, 27 Feb 2005 14:43:03 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1D5OzV-0008Kd-Us for ged-emacs-devel@m.gmane.org; Sun, 27 Feb 2005 09:01:49 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1D5Owv-0007pG-ST for emacs-devel@gnu.org; Sun, 27 Feb 2005 08:59:09 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1D5Ows-0007mn-Cz for emacs-devel@gnu.org; Sun, 27 Feb 2005 08:59:06 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1D5Owr-0007li-Nb for emacs-devel@gnu.org; Sun, 27 Feb 2005 08:59:05 -0500 Original-Received: from [199.232.76.164] (helo=fencepost.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.34) id 1D5OhT-0002Hl-50 for emacs-devel@gnu.org; Sun, 27 Feb 2005 08:43:11 -0500 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.34) id 1D5OhS-0003rb-Cu; Sun, 27 Feb 2005 08:43:10 -0500 Original-To: "Jan D." In-reply-to: <6caafaac432f7e0ccd0d7659af49040d@swipnet.se> (jan.h.d@swipnet.se) 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 X-MailScanner-To: ged-emacs-devel@m.gmane.org Xref: main.gmane.org gmane.emacs.devel:33869 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:33869 BLOCK_INPUT; ... record_unwind_protect() ... UNBLOCK_INPUT; unbind_to(); I think that code is correct. Neither record_unwind_protect nor unbind_to does anything to interrupt_input_blocked. If there is no abnormal control transfer, unbind_to will run the function that record_unwind_protect recorded, and UNBLOCK_INPUT will undo the BLOCK_INPUT. If there is an abnormal control transfer, it will run that function. It will also restore interrupt_input_blocked to the proper value corresponding to the place the error is caught. Which is not in this function.