* window.c (save_window_save, Fcurrent_window_configuration)
(Vwindow_persistent_parameters): Do not use Qstate. Rewrite
doc-strings.
* window.el (window--state-get-1, window-state-get): Do not use
special state value for window-persistent-parameters. Rename
argument IGNORE to WRITABLE. Rewrite doc-string.
(window--state-put-2): Reset all window parameters to nil before
assigning values of persistent parameters.
* windows.texi (Window Configurations): Rewrite references to
persistent window parameters.
(Window Parameters): Fix description of persistent window
parameters.
* window.c (Vwindow_persistent_parameters): New variable.
(Fset_window_configuration, save_window_save): Handle persistent
window parameters.
* window.el (window-state-ignored-parameters): Remove variable.
(window--state-get-1): Rename argument MARKERS to IGNORE.
Handle persistent window parameters. Make copy of clone-of
parameter only if requested. (Bug#10348)
(window--state-put-2): Install a window parameter only if it has
a non-nil value or an existing parameter shall be overwritten.
* windows.texi (Window Configurations, Window Parameters):
Describe persistent window parameters.
src/xdisp.c (rows_from_pos_range): Handle the case where the
highlight ends on a newline.
(mouse_face_from_buffer_pos): Fix off-by-one error in calculating
he end column for display of highlight that ends on a newline
before a R2L line.
This confusingly-named variable is typically nil in an installed Emacs,
and in an uninstalled Emacs points to the build directory, rather
than eg the target installation directory. Yay.
* src/epaths.in (PATH_LOADSEARCH, PATH_DUMPLOADSEARCH, PATH_EXEC)
(PATH_DATA, PATH_DOC): Update the template values to be closer to
their typical values these days.
* Makefile.in, src/epaths.in: Comments.
src/xdisp.c (rows_from_pos_range): Accept additional argument
DISP_STRING, and accept any glyph in a row whose object is that
string as eligible for mouse highlight. Fixes mouse highlight of
display strings from overlays.
* xdisp.c (note_mouse_highlight): Initialize `part', to avoid a
possible random value that matches one of those tested as
condition to clear the mouse face.
* dispnew.c (scrolling_window): Truncate overlaps in copy
destination of scroll runs so as to avoid assigning disabled bogus
rows and unnecessary graphics copy operations.
src/gnutls.c (init_gnutls_functions): Load gnutls_check_version.
Load gnutls_transport_set_lowat only if GnuTLS version is below
2.11.1.
(emacs_gnutls_handshake): Call gnutls_transport_set_lowat only for
GnuTLS versions below 2.11.1.
lisp/term/w32-win.el (dynamic-library-alist) <gnutls>: Load
libgnutls-28.dll, from GnuTLS version 3.x, in preference to
libgnutls-26.dll.
src/xdisp.c (syms_of_xdisp) <window-scroll-functions>: Add warning
to the doc string advising against its use for altering the way
windows are scrolled.
* fileio.c (auto_saving_dir_umask): New static var.
(Fmake_directory_internal): Use it.
(do_auto_save_make_dir): Set it, instead of invoking chmod after
creating the directory. The old code temporarily assigns
too-generous permissions to the directory.
(do_auto_save_eh): Clear it.
(Fdo_auto_save): Catch all errrors, not just file errors, so
that the var is always cleared.
src/xdisp.c (handle_invisible_prop): Handle correctly an invisible
property that ends at ZV, so that the bidi iteration could be
resumed from there (after widening).