Skip to content

Commit

Permalink
Command line arg processing fix (Bug#5392)
Browse files Browse the repository at this point in the history
* src/emacs.c (standard_args): Adjust arg priorities to reflect how
they are processed in startup.el.

* lisp/startup.el (command-line): Remove unused --icon-type arg.
Handle --display arg, passing it to command-line-1 (Bug#5392).
  • Loading branch information
Chong Yidong committed Jan 16, 2010
1 parent f217bc3 commit 48745df
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 6 deletions.
5 changes: 5 additions & 0 deletions lisp/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
2010-01-16 Chong Yidong <cyd@stupidchicken.com>

* startup.el (command-line): Remove unused --icon-type arg.
Handle --display arg, passing it to command-line-1 (Bug#5392).

2010-01-16 Mario Lang <mlang@delysid.org>

* cedet/ede/cpp-root.el (ede-cpp-root-project):
Expand Down
13 changes: 10 additions & 3 deletions lisp/startup.el
Original file line number Diff line number Diff line change
Expand Up @@ -758,7 +758,8 @@ opening the first frame (e.g. open a connection to an X server).")
(pop args)))

(let ((done nil)
(args (cdr command-line-args)))
(args (cdr command-line-args))
display-arg)

;; Figure out which user's init file to load,
;; either from the environment or from the options.
Expand Down Expand Up @@ -794,6 +795,11 @@ opening the first frame (e.g. open a connection to an X server).")
(setq argval nil
argi orig-argi)))))
(cond
;; The --display arg is handled partly in C, partly in Lisp.
;; When it shows up here, we just put it back to be handled
;; by `command-line-1'.
((member argi '("-d" "-display"))
(setq display-arg (list argi (pop args))))
((member argi '("-Q" "-quick"))
(setq init-file-user nil
site-run-file nil
Expand All @@ -813,8 +819,6 @@ opening the first frame (e.g. open a connection to an X server).")
(setq init-file-debug t))
((equal argi "-iconic")
(push '(visibility . icon) initial-frame-alist))
((member argi '("-icon-type" "-i" "-itype"))
(push '(icon-type . t) default-frame-alist))
((member argi '("-nbc" "-no-blinking-cursor"))
(setq no-blinking-cursor t))
;; Push the popped arg back on the list of arguments.
Expand All @@ -825,6 +829,9 @@ opening the first frame (e.g. open a connection to an X server).")
(and argval
(error "Option `%s' doesn't allow an argument" argi))))

;; Re-attach the --display arg.
(and display-arg (setq args (append display-arg args)))

;; Re-attach the program name to the front of the arg list.
(and command-line-args
(setcdr command-line-args args)))
Expand Down
5 changes: 5 additions & 0 deletions src/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
2010-01-16 Chong Yidong <cyd@stupidchicken.com>

* emacs.c (standard_args): Adjust arg priorities to reflect how
they are processed in startup.el.

2010-01-16 Andreas Schwab <schwab@linux-m68k.org>

* Makefile.in (lisp, shortlisp): Update.
Expand Down
7 changes: 4 additions & 3 deletions src/emacs.c
Original file line number Diff line number Diff line change
Expand Up @@ -1869,7 +1869,7 @@ const struct standard_args standard_args[] =
/* -d must come last before the options handled in startup.el. */
{ "-d", "--display", 60, 1 },
{ "-display", 0, 60, 1 },
/* Now for the options handled in startup.el. */
/* Now for the options handled in `command-line' (startup.el). */
{ "-Q", "--quick", 55, 0 },
{ "-quick", 0, 55, 0 },
{ "-q", "--no-init-file", 50, 0 },
Expand All @@ -1878,10 +1878,12 @@ const struct standard_args standard_args[] =
{ "-u", "--user", 30, 1 },
{ "-user", 0, 30, 1 },
{ "-debug-init", "--debug-init", 20, 0 },
{ "-nbi", "--no-bitmap-icon", 15, 0 },
{ "-iconic", "--iconic", 15, 0 },
{ "-D", "--basic-display", 12, 0},
{ "-basic-display", 0, 12, 0},
{ "-nbc", "--no-blinking-cursor", 12, 0 },
/* Now for the options handled in `command-line-1' (startup.el). */
{ "-nbi", "--no-bitmap-icon", 10, 0 },
{ "-bg", "--background-color", 10, 1 },
{ "-background", 0, 10, 1 },
{ "-fg", "--foreground-color", 10, 1 },
Expand All @@ -1891,7 +1893,6 @@ const struct standard_args standard_args[] =
{ "-ib", "--internal-border", 10, 1 },
{ "-ms", "--mouse-color", 10, 1 },
{ "-cr", "--cursor-color", 10, 1 },
{ "-nbc", "--no-blinking-cursor", 10, 0 },
{ "-fn", "--font", 10, 1 },
{ "-font", 0, 10, 1 },
{ "-fs", "--fullscreen", 10, 0 },
Expand Down

0 comments on commit 48745df

Please sign in to comment.