unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Jan D." <jan.h.d@swipnet.se>
Cc: emacs-devel@gnu.org
Subject: Re: Possible bug in xfns.c
Date: Sat, 26 Feb 2005 16:37:12 +0100	[thread overview]
Message-ID: <6caafaac432f7e0ccd0d7659af49040d@swipnet.se> (raw)
In-Reply-To: <x5ekf3v0nm.fsf@lola.goethe.zz>


2005-02-26 kl. 15.47 skrev David Kastrup:

>
> Throwing a signal restores interrupt_input_blocked to the state of the
> recording of the stack frame.

How does it do that?  I can't find that in the code.  I assumed 
record_unwind_protect did just that, recorded one unwind action to 
take.


>   In xfns.c, line 5207, we have a
> BLOCK_INPUT.  In line 5283 we have
>
> record_unwind_protect (clean_up_file_dialog, make_save_value (dialog, 
> 0));
>
> That means that clean_up_file_dialog will get called in case of an
> abort, and x_file_dialog will return with the value of
> interrupt_input_blocked increased by one as opposed to the time of the
> call.

I'm not sure what you mean by an abort.  The only code that does 
something like that is the Fsignal and the unbind_to after the 
UNBLOCK_INPUT.  Are you saying that

   BLOCK_INPUT;
   ...
   record_unwind_protect()
   ...
   UNBLOCK_INPUT;

   unbind_to();

will make interrupt_input_blocked have a value of 1 after the unbind_to 
(assuming it was 0 before BLOCK_INPUT and no code in ... throws)?

>
> Shouldn't record_unwind_protect be enclosed with
> UNBLOCK_INPUT/BLOCK_INPUT?

That wouldn't be correct, but we could move it before the first 
BLOCK_INPUT.

	Jan D.

  reply	other threads:[~2005-02-26 15:37 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-26 14:47 Possible bug in xfns.c David Kastrup
2005-02-26 15:37 ` Jan D. [this message]
2005-02-26 16:01   ` David Kastrup
2005-02-27 13:43   ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6caafaac432f7e0ccd0d7659af49040d@swipnet.se \
    --to=jan.h.d@swipnet.se \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).