patch 9.0.0189: invalid memory access for text prop without highlight
Problem: Invalid memory access for text prop without highlight.
Solution: Check for a valid highlight ID.
diff --git a/src/drawline.c b/src/drawline.c
index d38cf73..2b482bb 100644
--- a/src/drawline.c
+++ b/src/drawline.c
@@ -1710,7 +1710,8 @@
|| text_props[tpi].tp_id < 0)
&& text_props[tpi].tp_id != -MAXCOL)
{
- used_attr = syn_id2attr(pt->pt_hl_id);
+ if (pt->pt_hl_id > 0)
+ used_attr = syn_id2attr(pt->pt_hl_id);
text_prop_type = pt;
text_prop_attr =
hl_combine_attr(text_prop_attr, used_attr);
diff --git a/src/highlight.c b/src/highlight.c
index 2542c7b..c373afb 100644
--- a/src/highlight.c
+++ b/src/highlight.c
@@ -3504,6 +3504,7 @@
/*
* Translate a group ID to highlight attributes.
+ * "hl_id" must be valid: > 0, caller must check.
*/
int
syn_id2attr(int hl_id)
diff --git a/src/version.c b/src/version.c
index 6675c3a..03a8091 100644
--- a/src/version.c
+++ b/src/version.c
@@ -736,6 +736,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 189,
+/**/
188,
/**/
187,