summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2015-03-03 14:29:22 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2015-03-03 14:29:22 -0800
commitf15c8583198c3d6c26ca0c0a5b6fb019f98d6c3c (patch)
tree7068ac99c5729e94a93a4a0ae7ddd1acbb7d2c01
parent118a31a3b1eb08cba14887c3134054e9b4383688 (diff)
parentec26c23f4815fbc6bbd16d20f400721bc7b58344 (diff)
downloademacs-f15c8583198c3d6c26ca0c0a5b6fb019f98d6c3c.tar.gz
Merge from origin/emacs-24
ec26c23 authors.el: Add missing ignored and renamed files e589765 A more thorough fix for bug#19307 4e8d586 Fix last commit d6fee01 Tramp: Don't use a tempfile for ControlPath. 27e11c0 Fix display of overlay strings with faces after ellipsis (Bug#19307) e9a7e10 Fix redrawing of mode lines when exposed (Bug#19721) 50f3811 net/tramp.el (tramp-ssh-controlmaster-options): Use "%C" Conflicts: lisp/ChangeLog src/ChangeLog src/xdisp.c
-rw-r--r--admin/authors.el2
-rw-r--r--lisp/ChangeLog21
-rw-r--r--lisp/net/tramp.el25
-rw-r--r--src/ChangeLog27
-rw-r--r--src/dispnew.c6
-rw-r--r--src/xdisp.c32
6 files changed, 89 insertions, 24 deletions
diff --git a/admin/authors.el b/admin/authors.el
index afab6f0e1e8..d214ff281b7 100644
--- a/admin/authors.el
+++ b/admin/authors.el
@@ -357,6 +357,7 @@ Changes to files matching one of the regexps in this list are not listed.")
"All" "Version" "Everywhere" "Many" "Various" "files"
;; Directories.
"vms" "mac" "url" "tree-widget"
+ "info/dir"
)
"List of files and directories to ignore.
Changes to files in this list are not listed.")
@@ -796,6 +797,7 @@ in the repository.")
("play/bruce.el" . "bruce.el")
("play/yow.el" . "yow.el")
("patcomp.el" . "patcomp.el")
+ ("emulation/ws-mode.el" . "ws-mode.el")
;; From lisp to etc/forms.
("forms-d2.el" . "forms-d2.el")
("forms-pass.el" . "forms-pass.el")
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index db1358cd2fe..8083fb85cea 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,24 @@
+2015-03-03 Nicolas Petton <nicolas@petton.fr>
+
+ * emacs-lisp/authors.el (authors-ignored-files)
+ (authors-renamed-files-alist): Additions.
+
+2015-03-03 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-ssh-controlmaster-options): Don't use a
+ tempfile for ControlPath. (Bug#19702)
+
+2015-03-03 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-ssh-controlmaster-options): Use "%C" for
+ ControlPath if possible. (Bug#19702)
+
+2015-03-03 Glenn Morris <rgm@gnu.org>
+
+ * emacs-lisp/authors.el (authors-obsolete-files-regexps)
+ (authors-valid-file-names, authors-renamed-files-alist): Additions.
+
+2015-03-03 Alan Mackenzie <acm@muc.de>
2015-03-03 Alan Mackenzie <acm@muc.de>
CC Mode: Stop Font Lock forcing fontification from BOL. Fixes
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index ba0d13eab8b..a03affa5eeb 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -311,17 +311,26 @@ useful only in combination with `tramp-default-proxies-alist'.")
(let ((result "")
(case-fold-search t))
(ignore-errors
- (with-temp-buffer
- (call-process "ssh" nil t nil "-o" "ControlMaster")
- (goto-char (point-min))
- (when (search-forward-regexp "missing.+argument" nil t)
- (setq result "-o ControlPath=%t.%%r@%%h:%%p -o ControlMaster=auto")))
- (unless (zerop (length result))
+ (when (executable-find "ssh")
(with-temp-buffer
- (call-process "ssh" nil t nil "-o" "ControlPersist")
+ (call-process "ssh" nil t nil "-o" "ControlMaster")
(goto-char (point-min))
(when (search-forward-regexp "missing.+argument" nil t)
- (setq result (concat result " -o ControlPersist=no"))))))
+ (setq result "-o ControlMaster=auto")))
+ (unless (zerop (length result))
+ (with-temp-buffer
+ (call-process
+ "ssh" nil t nil "-o" "ControlPath=%C" "host.does.not.exist")
+ (goto-char (point-min))
+ (if (search-forward-regexp "unknown.+key" nil t)
+ (setq result
+ (concat result " -o ControlPath='tramp.%%r@%%h:%%p'"))
+ (setq result (concat result " -o ControlPath='tramp.%%C'"))))
+ (with-temp-buffer
+ (call-process "ssh" nil t nil "-o" "ControlPersist")
+ (goto-char (point-min))
+ (when (search-forward-regexp "missing.+argument" nil t)
+ (setq result (concat result " -o ControlPersist=no")))))))
result)
"Call ssh to detect whether it supports the Control* arguments.
Return a string to be used in `tramp-methods'.")
diff --git a/src/ChangeLog b/src/ChangeLog
index 0bc5d650caf..0a05b544d98 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,30 @@
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (handle_stop, handle_single_display_spec)
+ (next-element_from_image): Don't reset the
+ ignore_overlay_strings_at_pos_p flag here.
+ (next_element_from_buffer): Reset ignore_overlay_strings_at_pos_p
+ here.
+ (next_overlay_string): Set ignore_overlay_strings_at_pos_p here,
+ after we've exhausted all the overlay strings at the current
+ position. (Bug#19307)
+
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (set_iterator_to_next): Set value of stop_charpos
+ according to the object we are about to resume iterating.
+ (Bug#19307)
+
+ * dispnew.c (adjust_glyph_matrix): Set the update_mode_line flag
+ of the window whose current glyph matrix was resized, which
+ disables the mode-line row as side effect.
+
+ * xdisp.c (redisplay_window): Don't avoid redisplay of a window
+ whose update_mode_line flag is set. (Bug#19721)
+
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
+
+ * dispextern.h (FACE_FOR_CHAR): Fix the commentary.
2015-03-03 Daniel Colascione <dancol@dancol.org>
* alloc.c (syms_of_alloc): Rename `gc-precise-p' to `gc-precise'.
diff --git a/src/dispnew.c b/src/dispnew.c
index 6bc24697cb7..693dd49825c 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -567,6 +567,12 @@ adjust_glyph_matrix (struct window *w, struct glyph_matrix *matrix, int x, int y
for (i = 0; i < matrix->nrows; ++i)
matrix->rows[i].enabled_p = false;
}
+ /* We've disabled the mode-line row, so force redrawing of
+ the mode line, if any, since otherwise it will remain
+ disabled in the current matrix, and expose events won't
+ redraw it. */
+ if (WINDOW_WANTS_MODELINE_P (w))
+ w->update_mode_line = 1;
}
else if (matrix == w->desired_matrix)
{
diff --git a/src/xdisp.c b/src/xdisp.c
index 3f57841ac13..5ef839eb865 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -3241,7 +3241,6 @@ handle_stop (struct it *it)
it->dpvec = NULL;
it->current.dpvec_index = -1;
handle_overlay_change_p = !it->ignore_overlay_strings_at_pos_p;
- it->ignore_overlay_strings_at_pos_p = false;
it->ellipsis_p = false;
/* Use face of preceding text for ellipsis (if invisible) */
@@ -3331,7 +3330,6 @@ handle_stop (struct it *it)
pop_it (it);
else
{
- it->ignore_overlay_strings_at_pos_p = true;
it->string_from_display_prop_p = false;
it->from_disp_prop_p = false;
handle_overlay_change_p = false;
@@ -4925,11 +4923,6 @@ handle_single_display_spec (struct it *it, Lisp_Object spec, Lisp_Object object,
iterate_out_of_display_property (it);
*position = it->position;
}
- /* If we were to display this fringe bitmap,
- next_element_from_image would have reset this flag.
- Do the same, to avoid affecting overlays that
- follow. */
- it->ignore_overlay_strings_at_pos_p = false;
return 1;
}
}
@@ -4949,9 +4942,6 @@ handle_single_display_spec (struct it *it, Lisp_Object spec, Lisp_Object object,
iterate_out_of_display_property (it);
*position = it->position;
}
- if (it)
- /* Reset this flag like next_element_from_image would. */
- it->ignore_overlay_strings_at_pos_p = false;
return 1;
}
@@ -5445,6 +5435,12 @@ next_overlay_string (struct it *it)
if (it->sp > 0 && STRINGP (it->string) && !SCHARS (it->string))
pop_it (it);
+ /* Since we've exhausted overlay strings at this buffer
+ position, set the flag to ignore overlays until we move to
+ another position. The flag is reset in
+ next_element_from_buffer. */
+ it->ignore_overlay_strings_at_pos_p = true;
+
/* If we're at the end of the buffer, record that we have
processed the overlay strings there already, so that
next_element_from_buffer doesn't try it again. */
@@ -7289,17 +7285,18 @@ set_iterator_to_next (struct it *it, bool reseat_p)
reseat_at_next_visible_line_start (it, true);
else if (it->dpvec_char_len > 0)
{
- if (it->method == GET_FROM_STRING
- && it->current.overlay_string_index >= 0
- && it->n_overlay_strings > 0)
- it->ignore_overlay_strings_at_pos_p = true;
it->len = it->dpvec_char_len;
set_iterator_to_next (it, reseat_p);
}
/* Maybe recheck faces after display vector. */
if (recheck_faces)
- it->stop_charpos = IT_CHARPOS (*it);
+ {
+ if (it->method == GET_FROM_STRING)
+ it->stop_charpos = IT_STRING_CHARPOS (*it);
+ else
+ it->stop_charpos = IT_CHARPOS (*it);
+ }
}
break;
@@ -7916,7 +7913,6 @@ static bool
next_element_from_image (struct it *it)
{
it->what = IT_IMAGE;
- it->ignore_overlay_strings_at_pos_p = false;
return true;
}
@@ -8086,6 +8082,7 @@ next_element_from_buffer (struct it *it)
and handle the last stop_charpos that precedes our
current position. */
handle_stop_backwards (it, it->stop_charpos);
+ it->ignore_overlay_strings_at_pos_p = false;
return GET_NEXT_DISPLAY_ELEMENT (it);
}
else
@@ -8102,6 +8099,7 @@ next_element_from_buffer (struct it *it)
it->base_level_stop = it->stop_charpos;
}
handle_stop (it);
+ it->ignore_overlay_strings_at_pos_p = false;
return GET_NEXT_DISPLAY_ELEMENT (it);
}
}
@@ -8129,6 +8127,7 @@ next_element_from_buffer (struct it *it)
}
else
handle_stop_backwards (it, it->base_level_stop);
+ it->ignore_overlay_strings_at_pos_p = false;
return GET_NEXT_DISPLAY_ELEMENT (it);
}
else
@@ -15799,6 +15798,7 @@ redisplay_window (Lisp_Object window, bool just_this_one_p)
if (!just_this_one_p
&& REDISPLAY_SOME_P ()
&& !w->redisplay
+ && !w->update_mode_line
&& !f->redisplay
&& !buffer->text->redisplay
&& BUF_PT (buffer) == w->last_point)