patch 9.1.0062: Internal error when :luado/perldo/pydo etc delete lines
Problem: Internal error when :luado/perldo/pydo etc delete lines
Solution: Test that the line is still valid line number
(zeertzjq)
closes: #13931
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/if_tcl.c b/src/if_tcl.c
index d3d4639..eab321b 100644
--- a/src/if_tcl.c
+++ b/src/if_tcl.c
@@ -2012,7 +2012,8 @@
#if (TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION >= 5) || TCL_MAJOR_VERSION > 8
|| Tcl_LimitExceeded(tclinfo.interp)
#endif
- || curbuf != was_curbuf)
+ || curbuf != was_curbuf
+ || (linenr_T)rs > curbuf->b_ml.ml_line_count)
break;
line = (char *)Tcl_GetVar(tclinfo.interp, var_line, 0);
if (line)