changeset 29696:c1c599a367d4 v9.0.0188

patch 9.0.0188: strange effects when using "text_align" with non-zero column Commit: https://github.com/vim/vim/commit/82b14c143aa1e70d55509cc9fa408828e90c93de Author: Bram Moolenaar <Bram@vim.org> Date: Wed Aug 10 19:50:47 2022 +0100 patch 9.0.0188: strange effects when using "text_align" with non-zero column Problem: Strange effects when using virtual text with "text_align" and non-zero column. (Martin Tournoij) Solution: Give an error. (closes #10888)
author Bram Moolenaar <Bram@vim.org>
date Wed, 10 Aug 2022 21:00:04 +0200
parents 78eecd33c951
children 0089ec4231af
files src/errors.h src/testdir/test_textprop.vim src/textprop.c src/version.c
diffstat 4 files changed, 11 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/errors.h
+++ b/src/errors.h
@@ -3313,4 +3313,6 @@ EXTERN char e_cmdline_window_already_ope
 #ifdef FEAT_PROP_POPUP
 EXTERN char e_cannot_use_negative_id_after_adding_textprop_with_text[]
 	INIT(= N_("E1293: Cannot use a negative id after adding a textprop with text"));
+EXTERN char e_can_only_use_text_align_when_column_is_zero[]
+	INIT(= N_("E1294: Can only use text_align when column is zero"));
 #endif
--- a/src/testdir/test_textprop.vim
+++ b/src/testdir/test_textprop.vim
@@ -2530,6 +2530,8 @@ func Test_props_with_text_after()
 
   call StopVimInTerminal(buf)
   call delete('XscriptPropsWithTextAfter')
+
+  call assert_fails('call prop_add(1, 2, #{text: "yes", text_align: "right", type: "some"})', 'E1294:')
 endfunc
 
 func Test_props_with_text_after_below_trunc()
--- a/src/textprop.c
+++ b/src/textprop.c
@@ -488,6 +488,11 @@ prop_add_common(
 
 	    if (p == NULL)
 		goto theend;
+	    if (start_col != 0)
+	    {
+		emsg(_(e_can_only_use_text_align_when_column_is_zero));
+		goto theend;
+	    }
 	    if (STRCMP(p, "right") == 0)
 		flags |= TP_FLAG_ALIGN_RIGHT;
 	    else if (STRCMP(p, "below") == 0)
--- a/src/version.c
+++ b/src/version.c
@@ -736,6 +736,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    188,
+/**/
     187,
 /**/
     186,