diff src/drawline.c @ 31223:30377fd8341e v9.0.0945

patch 9.0.0945: failures in the cursorline test Commit: https://github.com/vim/vim/commit/637862fc3ca68e3fc1ea9a178bd7f9d25a6e773b Author: Bram Moolenaar <Bram@vim.org> Date: Thu Nov 24 23:04:02 2022 +0000 patch 9.0.0945: failures in the cursorline test Problem: Failures in the cursorline test. Solution: Reset extra_attr only after a text property.
author Bram Moolenaar <Bram@vim.org>
date Fri, 25 Nov 2022 00:15:02 +0100
parents 59de2172e99d
children 6ebd92646276
line wrap: on
line diff
--- a/src/drawline.c
+++ b/src/drawline.c
@@ -2403,9 +2403,6 @@ win_line(
 #if defined(FEAT_PROP_POPUP)
 	    if (wlv.n_extra <= 0)
 	    {
-		wlv.extra_for_textprop = FALSE;
-		in_linebreak = FALSE;
-
 		// Only restore search_attr and area_attr after "n_extra" in
 		// the next screen line is also done.
 		if (wlv.saved_n_extra <= 0)
@@ -2414,10 +2411,15 @@ win_line(
 			search_attr = saved_search_attr;
 		    if (area_attr == 0 && *ptr != NUL)
 			area_attr = saved_area_attr;
-		    // wlv.extra_attr should be used at this position but not
-		    // any further.
-		    reset_extra_attr = TRUE;
+
+		    if (wlv.extra_for_textprop)
+			// wlv.extra_attr should be used at this position but
+			// not any further.
+			reset_extra_attr = TRUE;
 		}
+
+		wlv.extra_for_textprop = FALSE;
+		in_linebreak = FALSE;
 	    }
 #endif
 	}