Commit caa50be2 authored by Jan Djärv's avatar Jan Djärv
Browse files

* frame.c (delete_frame): Block/unblock input to overcome race

condition.

Fixes: debbugs:15475
parent d3e2acb6
2013-09-29 Jan Djärv <jan.h.d@swipnet.se>
* frame.c (delete_frame): Block/unblock input to overcome race
condition (Bug#15475).
2013-09-29 Andreas Politz <politza@hochschule-trier.de> (tiny change)
* frame.c (delete_frame): Record selected frame only after
......
......@@ -1373,13 +1373,15 @@ delete_frame (Lisp_Object frame, Lisp_Object force)
have called the window-system-dependent frame destruction
routine. */
if (FRAME_TERMINAL (f)->delete_frame_hook)
(*FRAME_TERMINAL (f)->delete_frame_hook) (f);
{
block_input ();
if (FRAME_TERMINAL (f)->delete_frame_hook)
(*FRAME_TERMINAL (f)->delete_frame_hook) (f);
struct terminal *terminal = FRAME_TERMINAL (f);
f->output_data.nothing = 0;
f->terminal = 0; /* Now the frame is dead. */
unblock_input ();
/* If needed, delete the terminal that this frame was on.
(This must be done after the frame is killed.) */
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment