Disallow windows on dead frames in decode_any_window.
authorChong Yidong <cyd@gnu.org>
Sat, 21 Jul 2012 06:17:30 +0000 (14:17 +0800)
committerChong Yidong <cyd@gnu.org>
Sat, 21 Jul 2012 06:17:30 +0000 (14:17 +0800)
* window.c (decode_any_window): Signal an error if the window is
on a dead frame.

Fixes: debbugs:11984

src/ChangeLog
src/window.c

index e90e48e..e5a0736 100644 (file)
@@ -1,3 +1,8 @@
+2012-07-21  Chong Yidong  <cyd@gnu.org>
+
+       * window.c (decode_any_window): Signal an error if the window is
+       on a dead frame (Bug#11984).
+
 2012-07-20  Dmitry Antipov  <dmantipov@yandex.ru>
 
        Add indirection counting to speed up Fkill_buffer.
index 3bf7313..b7b6e28 100644 (file)
@@ -144,11 +144,15 @@ decode_window (register Lisp_Object window)
 static struct window *
 decode_any_window (register Lisp_Object window)
 {
+  struct window *w;
+
   if (NILP (window))
     return XWINDOW (selected_window);
 
   CHECK_WINDOW (window);
-  return XWINDOW (window);
+  w = XWINDOW (window);
+  CHECK_LIVE_FRAME (w->frame);
+  return w;
 }
 
 DEFUN ("windowp", Fwindowp, Swindowp, 1, 1, 0,