Throwing a signal restores interrupt_input_blocked to the state of the
recording of the stack frame.  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.

Shouldn't record_unwind_protect be enclosed with
UNBLOCK_INPUT/BLOCK_INPUT?

Note: I don't have much of a clue about the code, I am just trying to
dig for an abort.  The above certainly is not involved in the abort,
but while I am at it...

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

Reply via email to