diff src/drawline.c @ 31473:edd37b53405a v9.0.1069

patch 9.0.1069: diff mode highlight fails for special characters Commit: https://github.com/vim/vim/commit/417e88bb75ee8af1bf696760bba9f114a007f733 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Dec 17 15:03:02 2022 +0000 patch 9.0.1069: diff mode highlight fails for special characters Problem: Diff mode highlight fails for special characters. Solution: Adjust condition for setting "diff_hlf".
author Bram Moolenaar <Bram@vim.org>
date Sat, 17 Dec 2022 16:15:03 +0100
parents c097c18dcedb
children 6e24001000ed
line wrap: on
line diff
--- a/src/drawline.c
+++ b/src/drawline.c
@@ -2211,8 +2211,9 @@ win_line(
 		if (wlv.diff_hlf == HLF_CHD && ptr - line >= change_start
 							   && wlv.n_extra == 0)
 		    wlv.diff_hlf = HLF_TXD;		// changed text
-		if (wlv.diff_hlf == HLF_TXD && (ptr - line > change_end
-							   || wlv.n_extra > 0))
+		if (wlv.diff_hlf == HLF_TXD
+			&& ((ptr - line > change_end && wlv.n_extra == 0)
+			       || (wlv.n_extra > 0 && wlv.extra_for_textprop)))
 		    wlv.diff_hlf = HLF_CHD;		// changed line
 		wlv.line_attr = HL_ATTR(wlv.diff_hlf);
 		if (wp->w_p_cul && lnum == wp->w_cursor.lnum