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