diff options
author | Eli Zaretskii <eliz@gnu.org> | 2019-01-26 12:07:27 +0200 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2019-01-26 12:07:27 +0200 |
commit | bf4099b23738f0a481fb6020337039d84506fda4 (patch) | |
tree | 6cb896cf074bccba54a17acddbfb82cc8e082c0c /src/dispnew.c | |
parent | ce085f1d61a69e9e407a31d60c298f04cbd0c8d2 (diff) | |
download | emacs-bf4099b23738f0a481fb6020337039d84506fda4.tar.gz |
Fix face initializations in pdump'ed Emacs
* src/dispnew.c (init_display_interactive): Call init_faces_initial
in the daemon if dumped with pdumper. (Bug#34114)
Diffstat (limited to 'src/dispnew.c')
-rw-r--r-- | src/dispnew.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/dispnew.c b/src/dispnew.c index 88783cd5da7..300f1c2d70a 100644 --- a/src/dispnew.c +++ b/src/dispnew.c @@ -6035,10 +6035,21 @@ init_display_interactive (void) /* If running as a daemon, no need to initialize any frames/terminal, except on Windows, where we at least want to initialize it. */ -#ifndef WINDOWSNT if (IS_DAEMON) + { + /* Pdump'ed Emacs doesn't record the initial frame from temacs, + so the non-basic faces realized for that frame in temacs + aren't in emacs. This causes errors when users try to + customize those faces in their init file. The call to + init_faces_initial will realize these faces now. (Non-daemon + Emacs does this either near the end of this function or when + the GUI frame is created.) */ + if (dumped_with_pdumper_p ()) + init_faces_initial (); +#ifndef WINDOWSNT return; #endif + } /* If the user wants to use a window system, we shouldn't bother initializing the terminal. This is especially important when the |