aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorEli Zaretskii2013-12-28 13:47:26 +0200
committerEli Zaretskii2013-12-28 13:47:26 +0200
commitbf7bea5de09945949ab969f663aaf00fed1f67b4 (patch)
treeede99c7808adecb46544974c00b9fef37df04012 /lisp
parentefe702196ac87ce78d753672013429018e723a9e (diff)
downloademacs-bf7bea5de09945949ab969f663aaf00fed1f67b4.tar.gz
emacs-bf7bea5de09945949ab969f663aaf00fed1f67b4.zip
Fix bug #14739 with creation of GUI frames from TTY session on Windows.
src/w32fns.c (Fx_create_frame): Error out if called from a TTY session. lisp/frame.el (window-system-for-display): Don't allow to create a GUI frame from a -nw session on MS-Windows.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/frame.el12
2 files changed, 13 insertions, 4 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 9996dae5932..3c9356fbd7c 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
12013-12-28 Eli Zaretskii <eliz@gnu.org>
2
3 * frame.el (window-system-for-display): Don't allow to create a
4 GUI frame from a -nw session on MS-Windows. (Bug#14739)
5
12013-12-28 Glenn Morris <rgm@gnu.org> 62013-12-28 Glenn Morris <rgm@gnu.org>
2 7
3 * mail/hashcash.el (hashcash-program): Rename from hashcash-path. 8 * mail/hashcash.el (hashcash-program): Rename from hashcash-path.
diff --git a/lisp/frame.el b/lisp/frame.el
index 6105c88d7be..cb08fcb753f 100644
--- a/lisp/frame.el
+++ b/lisp/frame.el
@@ -540,10 +540,14 @@ is not considered (see `next-frame')."
540(defun window-system-for-display (display) 540(defun window-system-for-display (display)
541 "Return the window system for DISPLAY. 541 "Return the window system for DISPLAY.
542Return nil if we don't know how to interpret DISPLAY." 542Return nil if we don't know how to interpret DISPLAY."
543 (cl-loop for descriptor in display-format-alist 543 ;; MS-Windows doesn't know how to create a GUI frame in a -nw session.
544 for pattern = (car descriptor) 544 (if (and (eq system-type 'windows-nt)
545 for system = (cdr descriptor) 545 (null (window-system)))
546 when (string-match-p pattern display) return system)) 546 nil
547 (cl-loop for descriptor in display-format-alist
548 for pattern = (car descriptor)
549 for system = (cdr descriptor)
550 when (string-match-p pattern display) return system)))
547 551
548(defun make-frame-on-display (display &optional parameters) 552(defun make-frame-on-display (display &optional parameters)
549 "Make a frame on display DISPLAY. 553 "Make a frame on display DISPLAY.