[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs-25 06a872b: Fix redisplay on a TTY after 'make-frame
From: |
Eli Zaretskii |
Subject: |
[Emacs-diffs] emacs-25 06a872b: Fix redisplay on a TTY after 'make-frame' |
Date: |
Thu, 25 Feb 2016 17:59:37 +0000 |
branch: emacs-25
commit 06a872b71d6580e0699600844bb9526602437990
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>
Fix redisplay on a TTY after 'make-frame'
* src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
garbaged TTY frame if it is not the selected frame. (Bug#22794)
---
src/xdisp.c | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/src/xdisp.c b/src/xdisp.c
index fed5879..dec9947 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -11232,6 +11232,7 @@ clear_garbaged_frames (void)
if (frame_garbaged)
{
Lisp_Object tail, frame;
+ struct frame *sf = SELECTED_FRAME ();
FOR_EACH_FRAME (tail, frame)
{
@@ -11239,7 +11240,13 @@ clear_garbaged_frames (void)
if (FRAME_VISIBLE_P (f) && FRAME_GARBAGED_P (f))
{
- if (f->resized_p)
+ if (f->resized_p
+ /* It makes no sense to redraw a non-selected TTY
+ frame, since that will actually clear the
+ selected frame, and might leave the selected
+ frame with corrupted display, if it happens not
+ to be marked garbaged. */
+ && !(f != sf && (FRAME_TERMCAP_P (f) || FRAME_MSDOS_P (f))))
redraw_frame (f);
else
clear_current_matrices (f);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] emacs-25 06a872b: Fix redisplay on a TTY after 'make-frame',
Eli Zaretskii <=