Commit 1a850f4b authored by Glenn Morris's avatar Glenn Morris

Merge from origin/emacs-27

71fc0038 (origin/emacs-27) Avoid infloop in 'format-mode-line'
247dcb4b Clarify the documentation of 'left/right-fringe' display spec
d453cee1 Minor improvement in ELisp manual
3c778c44 * doc/misc/tramp.texi (Customizing Methods): Fix typo.
parents 1e3f94fa 71fc0038
Pipeline #6000 passed with stage
in 62 minutes and 1 second
......@@ -4274,9 +4274,10 @@ a display specification has the form
@noindent
@var{fringe} is either the symbol @code{left-fringe} or
@code{right-fringe}. @var{bitmap} is a symbol identifying the bitmap
to display. The optional @var{face} names a face whose foreground
color is used to display the bitmap; this face is automatically merged
with the @code{fringe} face.
to display. The optional @var{face} names a face whose foreground and
background colors are to be used to display the bitmap; this face is
automatically merged with the @code{fringe} face. If @var{face} is
omitted, that means to use the @code{default} face.
For instance, to display an arrow in the left fringe, using the
@code{warning} face, you could say something like:
......@@ -4980,8 +4981,9 @@ Margins}).
This display specification on any character of a line of text causes
the specified @var{bitmap} be displayed in the left or right fringes
for that line, instead of the characters that have the display
specification. The optional @var{face} specifies the colors to be
used for the bitmap. @xref{Fringe Bitmaps}, for the details.
specification. The optional @var{face} specifies the face whose
colors are to be used for the bitmap display. @xref{Fringe Bitmaps},
for the details.
@item (space-width @var{factor})
This display specification affects all the space characters within the
......
......@@ -1599,12 +1599,13 @@ parameters represent the user's stated preference; otherwise, use
This parameter specifies a relative position of the frame's
window-system window in the stacking (Z-) order of the frame's display.
If this is @code{above}, the frame's window-system window is displayed
above all other window-system windows that do not have the @code{above}
property set. If this is @code{nil}, the frame's window is displayed below all
windows that have the @code{above} property set and above all windows
that have the @code{below} property set. If this is @code{below}, the
frame's window is displayed below all windows that do not have the
If this is @code{above}, the window-system will display the window
that corresponds to the frame above all other window-system windows
that do not have the @code{above} property set. If this is
@code{nil}, the frame's window is displayed below all windows that
have the @code{above} property set and above all windows that have the
@code{below} property set. If this is @code{below}, the frame's
window is displayed below all windows that do not have the
@code{below} property set.
To position the frame above or below a specific other frame use the
......
......@@ -1709,10 +1709,11 @@ Integration for LXD containers. A container is accessed via
@item magit-tramp
@cindex method @option{git}
@cindex @option{git} method
Browing git repositories with @code{magit}. A versioned file is accessed via
@file{@trampfn{git,rev@@root-dir,/path/to/file}}. @samp{rev} is a git
revision, and @samp{root-dir} is a virtual host name for the root
directory, specified in @code{magit-tramp-hosts-alist}.
Browsing git repositories with @code{magit}. A versioned file is
accessed via @file{@trampfn{git,rev@@root-dir,/path/to/file}}.
@samp{rev} is a git revision, and @samp{root-dir} is a virtual host
name for the root directory, specified in
@code{magit-tramp-hosts-alist}.
@item tramp-hdfs
@cindex method @option{hdfs}
......
......@@ -26385,6 +26385,22 @@ decode_mode_spec (struct window *w, register int c, int field_width,
startpos = marker_position (w->start);
startpos_byte = marker_byte_position (w->start);
height = WINDOW_TOTAL_LINES (w);
/* We cannot cope with w->start being outside of the
accessible portion of the buffer; in particular,
display_count_lines call below will infloop if called with
startpos_byte outside of the [BEGV_BYTE..ZV_BYTE] region.
Such w->start means we were called in some "creative" way
when the buffer's restriction was changed, but the window
wasn't yet redisplayed after that. If that happens, we
need to determine a new base line. */
if (!(BUF_BEGV_BYTE (b) <= startpos_byte
&& startpos_byte <= BUF_ZV_BYTE (b)))
{
startpos = BUF_BEGV (b);
startpos_byte = BUF_BEGV_BYTE (b);
w->base_line_pos = 0;
w->base_line_number = 0;
}
/* If we decided that this buffer isn't suitable for line numbers,
don't forget that too fast. */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment