From 15874c5958f2480f3d77617b229734536830de42 Mon Sep 17 00:00:00 2001 From: Karl Heuer Date: Wed, 22 Mar 1995 21:22:31 +0000 Subject: [PATCH] (direct_output_forward_char): Don't use direct output at an overlay boundary. --- src/dispnew.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/dispnew.c b/src/dispnew.c index ee29b302ac4..7bf46a2a969 100644 --- a/src/dispnew.c +++ b/src/dispnew.c @@ -1143,11 +1143,16 @@ direct_output_forward_char (n) && (FRAME_CURSOR_X (frame) + 1 >= window_internal_width (w) - 1)) || cursor_in_echo_area) return 0; - + /* Can't use direct output if highlighting a region. */ if (!NILP (Vtransient_mark_mode) && !NILP (current_buffer->mark_active)) return 0; + /* Can't use direct output at an overlay boundary; it might have + before-string or after-string properties. */ + if (overlay_touches_p (PT) || overlay_touches_p (PT - n)) + return 0; + #ifdef USE_TEXT_PROPERTIES /* Don't use direct output next to an invisible character since we might need to do something special. */ -- 2.39.5