diff --git a/src/drawline.c b/src/drawline.c
index 26886bd..6c298b6 100644
--- a/src/drawline.c
+++ b/src/drawline.c
@@ -612,6 +612,8 @@
     proptype_T  *text_prop_type = NULL;
     int		extra_for_textprop = FALSE; // wlv.n_extra set for textprop
     int		text_prop_attr = 0;
+    int		text_prop_attr_comb = 0;  // text_prop_attr combined with
+					  // syntax_attr
     int		text_prop_id = 0;	// active property ID
     int		text_prop_flags = 0;
     int		text_prop_follows = FALSE;  // another text prop to display
@@ -1676,7 +1678,7 @@
 			--pi;
 # ifdef FEAT_LINEBREAK
 			// not exactly right but should work in most cases
-			if (in_linebreak && syntax_attr == text_prop_attr)
+			if (in_linebreak && syntax_attr == text_prop_attr_comb)
 			    syntax_attr = 0;
 # endif
 		    }
@@ -1716,6 +1718,7 @@
 		if (wlv.n_extra == 0 || !extra_for_textprop)
 		{
 		    text_prop_attr = 0;
+		    text_prop_attr_comb = 0;
 		    text_prop_flags = 0;
 		    text_prop_type = NULL;
 		    text_prop_id = 0;
@@ -1789,6 +1792,7 @@
 			    saved_search_attr = search_attr;
 			    search_attr = 0;	// restore when n_extra is zero
 			    text_prop_attr = 0;
+			    text_prop_attr_comb = 0;
 			    if (*ptr == NUL)
 				// don't combine char attr after EOL
 				text_prop_flags &= ~PT_FLAG_COMBINE;
@@ -1974,6 +1978,7 @@
 		    syntax_attr = hl_combine_attr(syntax_attr, text_prop_attr);
 		else
 		    syntax_attr = text_prop_attr;
+		text_prop_attr_comb = syntax_attr;
 	    }
 # endif
 #endif
diff --git a/src/testdir/dumps/Test_prop_linebreak.dump b/src/testdir/dumps/Test_prop_linebreak_1.dump
similarity index 65%
rename from src/testdir/dumps/Test_prop_linebreak.dump
rename to src/testdir/dumps/Test_prop_linebreak_1.dump
index 33be5b3..c1a56e8 100644
--- a/src/testdir/dumps/Test_prop_linebreak.dump
+++ b/src/testdir/dumps/Test_prop_linebreak_1.dump
@@ -1,4 +1,4 @@
->x+0&#ffffff0@49|]+0#ffffff16#e000002| +0#0000000#ffffff0@23
+>x+0&#ffffff0@49|]+0&#40ffff15| +0&#ffffff0@23
 |x@69| @4
 |~+0#4040ff13&| @73
 |~| @73
diff --git a/src/testdir/dumps/Test_prop_linebreak_2.dump b/src/testdir/dumps/Test_prop_linebreak_2.dump
new file mode 100644
index 0000000..e705f71
--- /dev/null
+++ b/src/testdir/dumps/Test_prop_linebreak_2.dump
@@ -0,0 +1,10 @@
+| +0#0000e05#a8a8a8255@1>x+0&#ffffff0@49|]+0&#40ffff15| +0#0000000#ffffff0@21
+| +0#0000e05#a8a8a8255@1|x+0&#ffffff0@69| +0#0000000&@2
+|~+0#4040ff13&| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+| +0#0000000&@56|1|,|1| @10|A|l@1| 
diff --git a/src/testdir/test_textprop.vim b/src/testdir/test_textprop.vim
index 03ae9c9..21d751f 100644
--- a/src/testdir/test_textprop.vim
+++ b/src/testdir/test_textprop.vim
@@ -1925,12 +1925,21 @@
   let lines =<< trim END
     set breakindent linebreak breakat+=]
     call printf('%s]%s', repeat('x', 50), repeat('x', 70))->setline(1)
-    call prop_type_add('test', #{highlight: 'ErrorMsg'})
+    call prop_type_add('test', #{highlight: 'MatchParen'})
     call prop_add(1, 51, #{length: 1, type: 'test'})
+    func AddMatch()
+      syntax on
+      syntax match xTest /.*/
+      hi link xTest Comment
+      set signcolumn=yes
+    endfunc
   END
   call writefile(lines, 'XscriptPropLinebreak')
   let buf = RunVimInTerminal('-S XscriptPropLinebreak', #{rows: 10})
-  call VerifyScreenDump(buf, 'Test_prop_linebreak', {})
+  call VerifyScreenDump(buf, 'Test_prop_linebreak_1', {})
+
+  call term_sendkeys(buf, ":call AddMatch()\<CR>")
+  call VerifyScreenDump(buf, 'Test_prop_linebreak_2', {})
 
   call StopVimInTerminal(buf)
   call delete('XscriptPropLinebreak')
diff --git a/src/version.c b/src/version.c
index f017ba1..9d05dc3 100644
--- a/src/version.c
+++ b/src/version.c
@@ -708,6 +708,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    357,
+/**/
     356,
 /**/
     355,
