emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: emacsclient's option decoding code


From: Juanma Barranquero
Subject: Re: emacsclient's option decoding code
Date: Mon, 3 Nov 2008 13:12:33 +0100

On Mon, Nov 3, 2008 at 05:14, Eli Zaretskii <address@hidden> wrote:

> That's a different problem, it needs some work in server.el.

Yes, I know. I was pointing out that Chong had succesfully reverted to
the previous condition.

> After
> that, at least -c should work on Windows, but its support in server.el
> was never written originally to work on anything but Unix.
>
> I will look into it when I have time.  You can file a bug report, if
> you want to make sure we don't forget this.

The following proof-of-concept patch seems to work (at the cost of
adding windows-specific conditions).

  Juanma


Index: lib-src/emacsclient.c
===================================================================
RCS file: /sources/emacs/emacs/lib-src/emacsclient.c,v
retrieving revision 1.140
diff -u -2 -b -r1.140 emacsclient.c
--- lib-src/emacsclient.c       2 Nov 2008 23:16:33 -0000       1.140
+++ lib-src/emacsclient.c       3 Nov 2008 11:37:19 -0000
@@ -575,7 +575,9 @@
     display = NULL;

+#ifndef WINDOWSNT
   /* If no display is available, new frames are tty frames.  */
   if (!current_frame && !display)
     tty = 1;
+#endif

   /* --no-wait implies --current-frame on ttys when there are file
Index: lisp/server.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/server.el,v
retrieving revision 1.171
diff -u -2 -b -r1.171 server.el
--- lisp/server.el      30 Oct 2008 15:50:01 -0000      1.171
+++ lisp/server.el      3 Nov 2008 12:06:49 -0000
@@ -631,10 +631,12 @@
                      ;; This is a leftover, see above.
                      (environment . ,(process-get proc 'env))))
-           (frame (make-frame-on-display
+           (frame (if (eq system-type 'windows-nt)
+                     (make-frame params)
+                   (make-frame-on-display
                    (or display
                        (frame-parameter nil 'display)
                        (getenv "DISPLAY")
                        (error "Please specify display"))
-                   params)))
+                    params))))
       (server-log (format "%s created" frame) proc)
       (select-frame frame)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]