X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/fca389d1d3253c58e198efaa28d175106ce5022a..6445ee0fb751ae2c1dfef900d44721b3d952812f:/lisp/server.el diff --git a/lisp/server.el b/lisp/server.el index 19c3c050bc..29d21609ba 100644 --- a/lisp/server.el +++ b/lisp/server.el @@ -1,6 +1,6 @@ ;;; server.el --- Lisp code for GNU Emacs running as server process -*- lexical-binding: t -*- -;; Copyright (C) 1986-1987, 1992, 1994-2014 Free Software Foundation, +;; Copyright (C) 1986-1987, 1992, 1994-2015 Free Software Foundation, ;; Inc. ;; Author: William Sommerfeld @@ -245,6 +245,7 @@ in this way." :type 'boolean :version "21.1") +;; FIXME? This is not a minor mode; what's the point of this? (See bug#20201) (or (assq 'server-buffer-clients minor-mode-alist) (push '(server-buffer-clients " Server") minor-mode-alist)) @@ -1139,9 +1140,12 @@ The following commands are accepted by the client: ;; frame. If running a GUI server, force the frame ;; type to GUI. (Cygwin is perfectly happy with ;; multi-tty support, so don't override the user's - ;; choice there.) + ;; choice there.) In daemon mode on Windows, we can't + ;; make tty frames, so force the frame type to GUI + ;; there too. (when (and (eq system-type 'windows-nt) - (eq window-system 'w32)) + (or (daemonp) + (eq window-system 'w32))) (push "-window-system" args-left))) ;; -position LINE[:COLUMN]: Set point to the given @@ -1215,7 +1219,10 @@ The following commands are accepted by the client: terminal-frame))))) (setq tty-name nil tty-type nil) (if display (server-select-display display))) - ((eq tty-name 'window-system) + ((or (and (eq system-type 'windows-nt) + (daemonp) + (setq display "w32")) + (eq tty-name 'window-system)) (server-create-window-system-frame display nowait proc parent-id frame-parameters))