From 5d1b158feb693847015326b3eae6605c9794b47d Mon Sep 17 00:00:00 2001 From: Martin Rudalics Date: Tue, 11 Dec 2018 09:16:21 +0100 Subject: [PATCH 1/6] Tiny markup fix in Elisp manual * doc/lispref/lists.texi (Building Lists): Use '@var' instead of '@code' for argument. --- doc/lispref/lists.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/lispref/lists.texi b/doc/lispref/lists.texi index ce62793550d..fdcfe33661d 100644 --- a/doc/lispref/lists.texi +++ b/doc/lispref/lists.texi @@ -640,7 +640,7 @@ resulting list. Instead, the sequence becomes the final @sc{cdr}, like any other non-list final argument. @defun copy-tree tree &optional vecp -This function returns a copy of the tree @code{tree}. If @var{tree} is a +This function returns a copy of the tree @var{tree}. If @var{tree} is a cons cell, this makes a new cons cell with the same @sc{car} and @sc{cdr}, then recursively copies the @sc{car} and @sc{cdr} in the same way. From 24b5026fb6b622966fd773178608617fa2f8add2 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Tue, 11 Dec 2018 12:32:11 +0200 Subject: [PATCH 2/6] Fix redisplay when a window's scroll bar or fringes are changed * src/window.c (set_window_fringes, set_window_scroll_bars): Set windows_or_buffers_changed flag to cause immediate thorough redisplay of a window when scroll bars or fringes are changed. (Bug#33694) --- src/window.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/window.c b/src/window.c index 5d99098cba1..6026313e5a4 100644 --- a/src/window.c +++ b/src/window.c @@ -7137,6 +7137,11 @@ set_window_fringes (struct window *w, Lisp_Object left_width, w->right_fringe_width = right; w->fringes_outside_margins = outside; + /* This is needed to trigger immediate redisplay of the window + when its fringes are changed, because fringes are redrawn + only if update_window is called, so we must trigger that even + if the window's glyph matrices did not change at all. */ + windows_or_buffers_changed = 35; return w; } else @@ -7254,6 +7259,12 @@ set_window_scroll_bars (struct window *w, Lisp_Object width, wset_horizontal_scroll_bar_type (w, Qnil); #endif + /* This is needed to trigger immediate redisplay of the window when + scroll bars are changed, because scroll bars are redisplayed only + if more than a single window needs to be considered, see + redisplay_internal. */ + if (changed) + windows_or_buffers_changed = 31; return changed ? w : NULL; } From f519aa10b47f7c652ae9b5f021363073f5c463ff Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Fri, 14 Dec 2018 10:43:37 +0200 Subject: [PATCH 3/6] Fix display of line numbers in empty lines beyond EOB * src/xdisp.c (maybe_produce_line_number): When the current line is at EOB, use the 'line-number-current-line' face only on that single line, but not on the rest of empty lines beyond EOB. (Bug#33732) --- src/xdisp.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/xdisp.c b/src/xdisp.c index 808eab7e538..435ab2c0296 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -21185,7 +21185,10 @@ maybe_produce_line_number (struct it *it) if (lnum_face_id != current_lnum_face_id && (EQ (Vdisplay_line_numbers, Qvisual) ? this_line == 0 - : this_line == it->pt_lnum)) + : this_line == it->pt_lnum) + /* Avoid displaying the line-number-current-line face on + empty lines beyond EOB. */ + && it->what != IT_EOB) tem_it.face_id = current_lnum_face_id; else tem_it.face_id = lnum_face_id; From f14d5742db39b797f742566c4e68dffa9a62646d Mon Sep 17 00:00:00 2001 From: Robert Pluim Date: Fri, 14 Dec 2018 15:04:14 +0100 Subject: [PATCH 4/6] Document font structure layout constraints The layout of the initial members of ftcrfont_info must match ftfont_info * src/ftcrfont.c (struct ftcrfont_info): Likewise. * src/ftfont.c (struct ftfont_info): Document layout constraints. --- src/ftcrfont.c | 5 +++-- src/ftfont.c | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/ftcrfont.c b/src/ftcrfont.c index 614ef083701..d19c300c5b0 100644 --- a/src/ftcrfont.c +++ b/src/ftcrfont.c @@ -35,8 +35,9 @@ along with GNU Emacs. If not, see . */ struct ftcrfont_info { struct font font; - /* The following six members must be here in this order to be - compatible with struct ftfont_info (in ftfont.c). */ + /* The following members up to and including 'matrix' must be here + in this order to be compatible with struct ftfont_info (in + ftfont.c). */ #ifdef HAVE_LIBOTF bool maybe_otf; /* Flag to tell if this may be OTF or not. */ OTF *otf; diff --git a/src/ftfont.c b/src/ftfont.c index 8f048d2983b..a05aa12c2af 100644 --- a/src/ftfont.c +++ b/src/ftfont.c @@ -56,8 +56,9 @@ struct ftfont_info { struct font font; #ifdef HAVE_LIBOTF - /* The following four members must be here in this order to be - compatible with struct xftfont_info (in xftfont.c). */ + /* The following members up to and including 'matrix' must be here in + this order to be compatible with struct xftfont_info (in + xftfont.c). */ bool maybe_otf; /* Flag to tell if this may be OTF or not. */ OTF *otf; #endif /* HAVE_LIBOTF */ From 30156364714f7b66ee82b28c9c01abebba4f49e5 Mon Sep 17 00:00:00 2001 From: Robert Pluim Date: Fri, 14 Dec 2018 16:07:47 +0100 Subject: [PATCH 5/6] Document font structure layout constraints This has to be the same as in src/ftcrfont.c and src/ftfont.c * src/xftfont.c (struct xftfont_info): Document layout constraints. --- src/xftfont.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/xftfont.c b/src/xftfont.c index 5ef90a014ea..9801d75d238 100644 --- a/src/xftfont.c +++ b/src/xftfont.c @@ -42,8 +42,9 @@ along with GNU Emacs. If not, see . */ struct xftfont_info { struct font font; - /* The following five members must be here in this order to be - compatible with struct ftfont_info (in ftfont.c). */ + /* The following members up to and including 'matrix' must be here + in this order to be compatible with struct ftfont_info (in + ftfont.c). */ #ifdef HAVE_LIBOTF bool maybe_otf; /* Flag to tell if this may be OTF or not. */ OTF *otf; @@ -51,6 +52,7 @@ struct xftfont_info FT_Size ft_size; int index; FT_Matrix matrix; + Display *display; XftFont *xftfont; unsigned x_display_id; From fa953b58afd39d396dab4d76a6ff0b8ba4040eb8 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Fri, 14 Dec 2018 20:09:02 -0500 Subject: [PATCH 6/6] Fix an epg test for recent GnuPG versions (bug#33439) * test/lisp/epg-tests.el (epg-decrypt-1): Tell recent GnuPG (e.g. 2.2.11) not to worry about missing MDC. --- test/lisp/epg-tests.el | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/lisp/epg-tests.el b/test/lisp/epg-tests.el index 0fe15017dd0..f2cc351d70b 100644 --- a/test/lisp/epg-tests.el +++ b/test/lisp/epg-tests.el @@ -87,6 +87,8 @@ (ert-deftest epg-decrypt-1 () (skip-unless (epg-tests-find-usable-gpg-configuration 'require-passphrase)) (with-epg-tests (:require-passphrase t) + (with-temp-file (expand-file-name "gpg.conf" epg-tests-home-directory) + (insert "ignore-mdc-error")) (should (equal "test" (epg-decrypt-string epg-tests-context "\ -----BEGIN PGP MESSAGE-----