The --quick command line option now ignores X resources and Registry settings.

* etc/NEWS: Mention new behavior of -Q and new variable `inhibit-x-resources'.

* lisp/startup.el (emacs-quick-startup): Remove variable and all uses.
  (command-line): Set `inhibit-x-resources' instead.
  (command-line-1): Use `inhibit-x-resources' instead.

* src/emacs.c (inhibit_x_resources): New variable.
  (main) [HAVE_NS]: Don't process --quick command line option.
  (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.

* src/lisp.h (inhibit_x_resources): Declare it extern.

* src/w32reg.c (x_get_string_resource):
* src/xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
This commit is contained in:
Juanma Barranquero 2009-09-17 23:04:41 +00:00
parent a69c67e84f
commit 8686ac7162
9 changed files with 48 additions and 10 deletions

View file

@ -1,3 +1,8 @@
2009-09-15 Juanma Barranquero <lekktu@gmail.com>
* NEWS: Mention new behavior of -Q and new variable
`inhibit-x-resources'.
2009-09-13 Chong Yidong <cyd@stupidchicken.com>
* PROBLEMS: Document Athena/Lucid internationalization

View file

@ -38,6 +38,11 @@ world-readable install.
* Changes in Emacs 23.2
** Command-line option -Q (--quick) now also disables loading X resources.
On Windows, Registry settings are ignored, though environment variables set
on the Registry are still honored. The new variable `inhibit-x-resources'
shows whether X resources were loaded or not.
** New completion-style `initials' to complete M-x lch to list-command-history.
** Unibyte sessions are declared obsolete.

View file

@ -1,3 +1,9 @@
2009-09-17 Juanma Barranquero <lekktu@gmail.com>
* startup.el (emacs-quick-startup): Remove variable and all uses.
(command-line): Set `inhibit-x-resources' instead.
(command-line-1): Use `inhibit-x-resources' instead.
2009-09-17 Chong Yidong <cyd@stupidchicken.com>
* subr.el: Fix last change to avoid using the `unless' macro,

View file

@ -366,8 +366,6 @@ from being initialized."
string)
:group 'auto-save)
(defvar emacs-quick-startup nil)
(defvar emacs-basic-display nil)
(defvar init-file-debug nil)
@ -799,7 +797,7 @@ opening the first frame (e.g. open a connection to an X server).")
((member argi '("-Q" "-quick"))
(setq init-file-user nil
site-run-file nil
emacs-quick-startup t))
inhibit-x-resources t))
((member argi '("-D" "-basic-display"))
(setq no-blinking-cursor t
emacs-basic-display t)
@ -2274,7 +2272,7 @@ A fancy display is used on graphic displays, normal otherwise."
(if (or inhibit-startup-screen
initial-buffer-choice
noninteractive
emacs-quick-startup)
inhibit-x-resources)
;; Not displaying a startup screen. If 3 or more files
;; visited, and not all visible, show user what they all are.

View file

@ -1,3 +1,14 @@
2009-09-17 Juanma Barranquero <lekktu@gmail.com>
* emacs.c (inhibit_x_resources): New variable.
(main) [HAVE_NS]: Don't process --quick command line option.
(syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
* lisp.h (inhibit_x_resources): Declare it extern.
* w32reg.c (x_get_string_resource):
* xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
2009-09-17 Eli Zaretskii <eliz@gnu.org>
* Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP): Add

View file

@ -239,6 +239,9 @@ int noninteractive;
int noninteractive1;
/* Nonzero means Emacs was run in --quick mode. */
int inhibit_x_resources;
/* Name for the server started by the daemon.*/
static char *daemon_name;
@ -1483,11 +1486,6 @@ main (int argc, char **argv)
ns_no_defaults = 1;
skip_args--;
}
if (argmatch (argv, argc, "-Q", "--quick", 5, NULL, &skip_args))
{
ns_no_defaults = 1;
skip_args--;
}
#ifdef NS_IMPL_COCOA
if (skip_args < argc)
{
@ -2680,6 +2678,10 @@ was found. */);
This is nil during initialization. */);
Vafter_init_time = Qnil;
DEFVAR_BOOL ("inhibit-x-resources", &inhibit_x_resources,
doc: /* If non-nil, X resources and Windows Registry settings are not used. */);
inhibit_x_resources = 0;
/* Make sure IS_DAEMON starts up as false. */
daemon_pipe[1] = 0;
}

View file

@ -3143,6 +3143,9 @@ void shut_down_emacs P_ ((int, int, Lisp_Object));
/* Nonzero means don't do interactive redisplay and don't change tty modes */
extern int noninteractive;
/* Nonzero means don't load X resources or Windows Registry settings. */
extern int inhibit_x_resources;
/* Pipe used to send exit notification to the daemon parent at
startup. */
extern int daemon_pipe[2];

View file

@ -76,7 +76,7 @@ w32_get_rdb_resource (rdb, resource)
return NULL;
}
LPBYTE
static LPBYTE
w32_get_string_resource (name, class, dwexptype)
char *name, *class;
DWORD dwexptype;
@ -160,6 +160,10 @@ x_get_string_resource (rdb, name, class)
return resource;
}
if (inhibit_x_resources)
/* --quick was passed, so this is a no-op. */
return NULL;
return (w32_get_string_resource (name, class, REG_SZ));
}

View file

@ -693,6 +693,10 @@ x_get_string_resource (rdb, name, class)
{
XrmValue value;
if (inhibit_x_resources)
/* --quick was passed, so this is a no-op. */
return NULL;
if (x_get_resource (rdb, name, class, x_rm_string, &value))
return (char *) value.addr;