aboutsummaryrefslogtreecommitdiffstats
path: root/src/frame.c
diff options
context:
space:
mode:
authorJan Djärv <[email protected]>2009-11-27 17:27:04 +0000
committerJan Djärv <[email protected]>2009-11-27 17:27:04 +0000
commitece2d4ed181649ebdac464f8149527a9ce75d4ad (patch)
tree431a9fb9ebf71d7ee10aab9ea8a801304ca2cd51 /src/frame.c
parent59ffcfc485671bea907b4b8353bd0b8f5e75dc41 (diff)
Don't crash if an X terminal is deleted with force == t.
* xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display is NULL. * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL. * frame.c (frame_make_pointer_invisible) (frame_make_pointer_visible): Just return if there isn't any selected frame.
Diffstat (limited to 'src/frame.c')
-rw-r--r--src/frame.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/frame.c b/src/frame.c
index 4a9d30dd21..1475eb68fb 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -4377,6 +4377,9 @@ frame_make_pointer_invisible ()
{
if (! NILP (Vmake_pointer_invisible))
{
+ if (!FRAMEP (selected_frame) || !FRAME_LIVE_P (XFRAME (selected_frame)))
+ return;
+
struct frame *f = SELECTED_FRAME ();
if (f && !f->pointer_invisible
&& FRAME_TERMINAL (f)->toggle_invisible_pointer_hook)
@@ -4394,6 +4397,9 @@ frame_make_pointer_visible ()
/* We don't check Vmake_pointer_invisible here in case the
pointer was invisible when Vmake_pointer_invisible was set to nil. */
+ if (!FRAMEP (selected_frame) || !FRAME_LIVE_P (XFRAME (selected_frame)))
+ return;
+
struct frame *f = SELECTED_FRAME ();
if (f && f->pointer_invisible && f->mouse_moved
&& FRAME_TERMINAL (f)->toggle_invisible_pointer_hook)