New test problem: test_crash.vim: Found errors in Test_crash1():
New problem? Or is it just me? -ernie -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/fe5269d2-49c3-ec72-0477-ce2d8a4c8ea8%40raelity.com.
Typo(s) in channel.txt
Originally, I reported this back in 2018. Since then, the documentation for job_start() moved from eval.txt to channel.txt and the text that I'm describing is still there. In the documentation for job_start() it shows: On MS-Windows, job_start() makes a GUI application hidden. If want to show it, Use |:!start| instead. Perhaps the last line should read: you want to show it, use |:!start| instead. [inserting the word 'you' and changing 'Use' into 'use'] Adri -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/b2d91e4b-817b-dd62-3753-2a68dae46b35%40a3.xs4all.nl.
Commit: patch 9.0.1853: CI error on different signedness in regexp.c
patch 9.0.1853: CI error on different signedness in regexp.c Commit: https://github.com/vim/vim/commit/15cbaae31382f17c96a4519e334dd7ba4a90ecba Author: Christian Brabandt Date: Sat Sep 2 22:08:43 2023 +0200 patch 9.0.1853: CI error on different signedness in regexp.c Problem: CI error on different signedness in regexp.c (after patch 9.0.1848) Solution: Cast strlen() call to int Signed-off-by: Christian Brabandt diff --git a/src/regexp.c b/src/regexp.c index edd1293a5..2c740d303 100644 --- a/src/regexp.c +++ b/src/regexp.c @@ -2052,7 +2052,7 @@ vim_regsub_both( if (copy) { if (eval_result[nested] != NULL && - STRLEN(eval_result[nested]) < destlen) + (int)STRLEN(eval_result[nested]) < destlen) { STRCPY(dest, eval_result[nested]); dst += STRLEN(eval_result[nested]); diff --git a/src/version.c b/src/version.c index 61fe83b78..fe1495ab6 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1853, /**/ 1852, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcX1N-00CV0n-NS%40256bit.org.
Commit: patch 9.0.1852: i_CTRL-O does not reset Select Mode
patch 9.0.1852: i_CTRL-O does not reset Select Mode Commit: https://github.com/vim/vim/commit/d69aecf141ff05a645d02f39f1cbf6381ed7d0c0 Author: pierreganty Date: Sat Sep 2 21:59:52 2023 +0200 patch 9.0.1852: i_CTRL-O does not reset Select Mode Problem: i_CTRL-O does not reset Select Mode Solution: Reset select mode on CTRL-O in insert mode closes: #13001 closes: #12115 Signed-off-by: Christian Brabandt Co-authored-by: Christian Brabandt diff --git a/src/edit.c b/src/edit.c index 0c902f895..a51542525 100644 --- a/src/edit.c +++ b/src/edit.c @@ -3859,6 +3859,7 @@ ins_insert(int replaceState) static void ins_ctrl_o(void) { +restart_VIsual_select = 0; if (State & VREPLACE_FLAG) restart_edit = 'V'; else if (State & REPLACE_FLAG) diff --git a/src/testdir/test_selectmode.vim b/src/testdir/test_selectmode.vim index 6e2c36927..bf1b52b32 100644 --- a/src/testdir/test_selectmode.vim +++ b/src/testdir/test_selectmode.vim @@ -310,4 +310,15 @@ func Test_selectmode_register() bw! endfunc +func Test_ins_ctrl_o_in_insert_mode_resets_selectmode() + new + " ctrl-o in insert mode resets restart_VIsual_select + call setline(1, 'abcdef') + call cursor(1, 1) + exe "norm! \\\cIABC" + call assert_equal('ABCbcdef', getline(1)) + + bwipe! +endfunc + " vim: shiftwidth=2 sts=2 expandtab diff --git a/src/version.c b/src/version.c index 605a61c4f..61fe83b78 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1852, /**/ 1851, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcX1L-00CV0I-Ie%40256bit.org.
Commit: patch 9.0.1851: breakindent missing by virt text
patch 9.0.1851: breakindent missing by virt text Commit: https://github.com/vim/vim/commit/3c3cf1d6892103a1ce6bab7f3546447d85fb5d1c Author: zeertzjq Date: Sat Sep 2 21:55:00 2023 +0200 patch 9.0.1851: breakindent missing by virt text Problem: Virtual text at a column causes 'breakindent' and 'showbreak' to be missing (after patch 9.0.1124). Solution: Add check for "tp_col" in another place where TP_FLAG_WRAP is checked. closes: #12769 closes: #13008 closes: #13010 Signed-off-by: Christian Brabandt Co-authored-by: zeertzjq diff --git a/src/drawline.c b/src/drawline.c index edcf55cf3..04e7ed8d5 100644 --- a/src/drawline.c +++ b/src/drawline.c @@ -2112,7 +2112,8 @@ win_line( & TP_FLAG_ALIGN_RIGHT); int below = (tp->tp_flags & TP_FLAG_ALIGN_BELOW); - int wrap = (tp->tp_flags & TP_FLAG_WRAP); + int wrap = tp->tp_col < MAXCOL + || (tp->tp_flags & TP_FLAG_WRAP); int padding = tp->tp_col == MAXCOL && tp->tp_len > 1 ? tp->tp_len - 1 : 0; diff --git a/src/testdir/test_textprop.vim b/src/testdir/test_textprop.vim index 736d50bed..106e2e56c 100644 --- a/src/testdir/test_textprop.vim +++ b/src/testdir/test_textprop.vim @@ -1983,7 +1983,7 @@ func Test_prop_with_linebreak() set linebreak setline(1, 'one twoword') prop_type_add('test', {highlight: 'Special'}) - prop_add(1, 4, {text: ': virtual text', type: 'test', text_wrap: 'wrap'}) + prop_add(1, 4, {text: ': virtual text', type: 'test'}) END call writefile(lines, 'XscriptPropWithLinebreak', 'D') let buf = RunVimInTerminal('-S XscriptPropWithLinebreak', #{rows: 6, cols: 50}) @@ -2690,7 +2690,7 @@ func Run_test_prop_inserts_text_showbreak(cmd) setlocal scrolloff=0 smoothscroll call setline(1, repeat('a', 28)) call prop_type_add('theprop', #{highlight: 'Special'}) -call prop_add(1, 28, #{type: 'theprop', text: repeat('123', 23), text_wrap: 'wrap'}) +call prop_add(1, 28, #{type: 'theprop', text: repeat('123', 23)}) normal! $ END let lines = insert(lines, a:cmd) @@ -2761,7 +2761,7 @@ func Test_prop_before_tab_skipcol() setlocal list listchars=tab:<-> scrolloff=0 smoothscroll call setline(1, repeat(" ", 4) .. 'a') call prop_type_add('theprop', #{highlight: 'Special'}) -call prop_add(1, 4, #{type: 'theprop', text: repeat('12', 32), text_wrap: 'wrap'}) +call prop_add(1, 4, #{type: 'theprop', text: repeat('12', 32)}) normal! $ END call writefile(lines, 'XscriptPropsBeforeTabSkipcol', 'D') @@ -2798,7 +2798,7 @@ func Test_prop_inserts_text_before_linebreak() setlocal linebreak showbreak=+ breakindent breakindentopt=shift:2 call setline(1, repeat('a', 50) .. ' ' .. repeat('c', 45)) call prop_type_add('theprop', #{highlight: 'Special'}) -call prop_add(1, 51, #{type: 'theprop', text: repeat('b', 10), text_wrap: 'wrap'}) +call prop_add(1, 51, #{type: 'theprop', text: repeat('b', 10)}) normal! $ END call writefile(lines, 'XscriptPropsBeforeLinebreak', 'D') @@ -3255,8 +3255,8 @@ func Test_props_with_text_empty_line() let lines =<< trim END call setline(1, ['', 'aaa', '', 'bb']) call prop_type_add('prop1', #{highlight: 'Search'}) - call prop_add(1, 1, #{type: 'prop1', text_wrap: 'wrap', text: repeat('X', &columns)}) - call prop_add(3, 1, #{type: 'prop1', text_wrap: 'wrap', text: repeat('X', &columns + 1)}) + call prop_add(1, 1, #{type: 'prop1', text: repeat('X', &columns)}) + call prop_add(3, 1, #{type: 'prop1', text: repeat('X', &columns + 1)}) normal gg0 END call writefile(lines, 'XscriptPropsWithTextEmptyLine', 'D') diff --git a/src/version.c b/src/version.c index 517e0504e..605a61c4f 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1851, /**/ 1850, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcWmt-00CTxc-Nd%40256bit.org.
Commit: patch 9.0.1850: Vim9: wrong line number where options set
patch 9.0.1850: Vim9: wrong line number where options set Commit: https://github.com/vim/vim/commit/32f3461465a26192172734584c4cbab6e55e2b7f Author: LemonBoy Date: Sat Sep 2 21:52:05 2023 +0200 patch 9.0.1850: Vim9: wrong line number where options set Problem: Vim9: wrong line number where options set Solution: Set source line number earlier closes: #13006 closes: #13013 Signed-off-by: Christian Brabandt Co-authored-by: LemonBoy diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim index 338167e7b..656185ada 100644 --- a/src/testdir/test_vim9_script.vim +++ b/src/testdir/test_vim9_script.vim @@ -4332,6 +4332,23 @@ def Test_option_set() set foldlevel& enddef +def Test_option_set_line_number() + var lines =<< trim END + vim9script + # line2 + # line3 + def F() + # line5 + &foldlevel = -128 + enddef + F() + END + v9.CheckScriptSuccess(lines) + + var res = execute('verbose set foldlevel') + assert_match(' foldlevel.*Last set from .*XScriptSuccess\d\+ line 6', res) +enddef + def Test_option_modifier() # legacy script allows for white space var lines =<< trim END diff --git a/src/version.c b/src/version.c index c94a450d0..517e0504e 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1850, /**/ 1849, /**/ diff --git a/src/vim9execute.c b/src/vim9execute.c index 2fbce780f..c29873c89 100644 --- a/src/vim9execute.c +++ b/src/vim9execute.c @@ -3836,6 +3836,7 @@ exec_instructions(ectx_T *ectx) char_u *tofree = NULL; --ectx->ec_stack.ga_len; + SOURCING_LNUM = iptr->isn_lnum; tv = STACK_TV_BOT(0); if (tv->v_type == VAR_STRING) { @@ -3845,7 +3846,6 @@ exec_instructions(ectx_T *ectx) } else if (iptr->isn_type == ISN_STOREFUNCOPT) { - SOURCING_LNUM = iptr->isn_lnum; // If the option can be set to a function reference or // a lambda and the passed value is a function // reference, then convert it to the name (string) of -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcWmr-00CTx6-MU%40256bit.org.
Commit: patch 9.0.1849: CI error on different signedness in ex_cmds.c
patch 9.0.1849: CI error on different signedness in ex_cmds.c Commit: https://github.com/vim/vim/commit/c8a034210f043639f27b6f346c5a9933f17e7159 Author: Christian Brabandt Date: Sat Sep 2 21:48:46 2023 +0200 patch 9.0.1849: CI error on different signedness in ex_cmds.c Problem: CI error on different signedness Solution: cast unsigned to int Signed-off-by: Christian Brabandt diff --git a/src/ex_cmds.c b/src/ex_cmds.c index 53c7bb5a3..4f1d93244 100644 --- a/src/ex_cmds.c +++ b/src/ex_cmds.c @@ -4651,7 +4651,7 @@ ex_substitute(exarg_T *eap) mch_memmove(new_end, sub_firstline + copycol, (size_t)copy_len); new_end += copy_len; - if (new_start_len - copy_len < sublen) + if ((int)new_start_len - copy_len < sublen) sublen = new_start_len - copy_len - 1; #ifdef FEAT_EVAL diff --git a/src/version.c b/src/version.c index b69c41068..c94a450d0 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1849, /**/ 1848, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcWmp-00CTwf-Es%40256bit.org.
Commit: patch 9.0.1848: [security] buffer-overflow in vim_regsub_both()
patch 9.0.1848: [security] buffer-overflow in vim_regsub_both() Commit: https://github.com/vim/vim/commit/ced2c7394aafdc90fb7845e09b3a3fee23d48cb1 Author: Christian Brabandt Date: Sat Sep 2 21:15:52 2023 +0200 patch 9.0.1848: [security] buffer-overflow in vim_regsub_both() Problem: buffer-overflow in vim_regsub_both() Solution: Check remaining space Signed-off-by: Christian Brabandt diff --git a/src/ex_cmds.c b/src/ex_cmds.c index c30b6fddf..53c7bb5a3 100644 --- a/src/ex_cmds.c +++ b/src/ex_cmds.c @@ -4651,6 +4651,9 @@ ex_substitute(exarg_T *eap) mch_memmove(new_end, sub_firstline + copycol, (size_t)copy_len); new_end += copy_len; + if (new_start_len - copy_len < sublen) + sublen = new_start_len - copy_len - 1; + #ifdef FEAT_EVAL ++textlock; #endif diff --git a/src/regexp.c b/src/regexp.c index 9c576c689..edd1293a5 100644 --- a/src/regexp.c +++ b/src/regexp.c @@ -2051,7 +2051,8 @@ vim_regsub_both( // "flags & REGSUB_COPY" != 0. if (copy) { - if (eval_result[nested] != NULL) + if (eval_result[nested] != NULL && + STRLEN(eval_result[nested]) < destlen) { STRCPY(dest, eval_result[nested]); dst += STRLEN(eval_result[nested]); diff --git a/src/testdir/crash/vim_regsub_both b/src/testdir/crash/vim_regsub_both new file mode 100644 index 0..a82b205c8 --- /dev/null +++ b/src/testdir/crash/vim_regsub_both @@ -0,0 +1,10 @@ +fu R() +sil!norm0z= +endf +cal R() +s/\%')/\=R() +d +no0 norm yynore sm:vs0@vvse()dir(¼Xtest=csd{so88 +vs +0scr +so diff --git a/src/testdir/test_crash.vim b/src/testdir/test_crash.vim index 0dea3c2cb..445fe8d5a 100644 --- a/src/testdir/test_crash.vim +++ b/src/testdir/test_crash.vim @@ -6,7 +6,7 @@ CheckScreendump func Test_crash1() " The following used to crash Vim - let opts = #{wait_for_ruler: 0} + let opts = #{wait_for_ruler: 0, rows: 20} let args = ' -u NONE -i NONE -n -e -s -S ' let buf = RunVimInTerminal(args .. ' crash/poc_huaf1', opts) call VerifyScreenDump(buf, 'Test_crash_01', {}) @@ -22,4 +22,13 @@ func Test_crash1() endfunc +func Test_crash2() + " The following used to crash Vim + let opts = #{wait_for_ruler: 0, rows: 20} + let args = ' -u NONE -i NONE -n -e -s -S ' + let buf = RunVimInTerminal(args .. ' crash/vim_regsub_both', opts) + call VerifyScreenDump(buf, 'Test_crash_01', {}) + exe buf .. "bw!" +endfunc + " vim: shiftwidth=2 sts=2 expandtab diff --git a/src/version.c b/src/version.c index c638a107e..b69c41068 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1848, /**/ 1847, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcWYJ-00CSrT-IS%40256bit.org.
Re: vim9class: accessing statics from outside the class
On Sat, Sep 2, 2023 at 9:31 AM Ernie Rael wrote: > AFAICT, it doesn't work. Is anyone working on this? > > I've run into it while working https://github.com/vim/vim/pull/13007. > > I am taking a look, but I don't want duplicate efforts. > I am not working on this. - Yegappan -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/CAAW7x7nTYsQd9XDGLGYdAq%2BHSMuQ1jVqbpmbu66t8pNMFZCNGw%40mail.gmail.com.
Commit: patch 9.0.1847: [security] potential oob write in do_addsub()
patch 9.0.1847: [security] potential oob write in do_addsub() Commit: https://github.com/vim/vim/commit/889f6af37164775192e33b233a90e86fd3df0f57 Author: Christian Brabandt Date: Sat Sep 2 19:43:33 2023 +0200 patch 9.0.1847: [security] potential oob write in do_addsub() Problem: potential oob write in do_addsub() Solution: don't overflow buf2, check size in for loop() Signed-off-by: Christian Brabandt diff --git a/src/ops.c b/src/ops.c index d46a049fe..f4524d3d7 100644 --- a/src/ops.c +++ b/src/ops.c @@ -2919,7 +2919,7 @@ do_addsub( for (bit = bits; bit > 0; bit--) if ((n >> (bit - 1)) & 0x1) break; - for (i = 0; bit > 0; bit--) + for (i = 0; bit > 0 && i < (NUMBUFLEN - 1); bit--) buf2[i++] = ((n >> (bit - 1)) & 0x1) ? '1' : '0'; buf2[i] = ' diff --git a/src/version.c b/src/version.c index 5cde7c185..c638a107e 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1847, /**/ 1846, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcUug-00CMOu-NN%40256bit.org.
Commit: patch 9.0.1846: [security] crash in fullcommand
patch 9.0.1846: [security] crash in fullcommand Commit: https://github.com/vim/vim/commit/4c6fe2e2ea62469642ed1d80b16d39e616b25cf5 Author: Christian Brabandt Date: Sat Sep 2 19:30:03 2023 +0200 patch 9.0.1846: [security] crash in fullcommand Problem: crash in fullcommand Solution: Check for typeval correctly Signed-off-by: Christian Brabandt diff --git a/src/ex_docmd.c b/src/ex_docmd.c index 32d52ab21..10d979d49 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -4087,7 +4087,7 @@ f_fullcommand(typval_T *argvars, typval_T *rettv) || check_for_opt_bool_arg(argvars, 1) == FAIL)) return; -name = argvars[0].vval.v_string; +name = tv_get_string(&argvars[0]); if (name == NULL) return; diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim index 0eda5de38..ab1dbf3b5 100644 --- a/src/testdir/test_functions.vim +++ b/src/testdir/test_functions.vim @@ -3607,4 +3607,9 @@ func Test_string_reverse() let &encoding = save_enc endfunc +func Test_fullcommand() + " this used to crash vim + call assert_equal('', fullcommand(10)) +endfunc + " vim: shiftwidth=2 sts=2 expandtab diff --git a/src/version.c b/src/version.c index 3de6046ff..5cde7c185 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1846, /**/ 1845, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcUgB-00CLN4-RL%40256bit.org.
Commit: patch 9.0.1845: xxd: Test_xxd_color start failing
patch 9.0.1845: xxd: Test_xxd_color start failing Commit: https://github.com/vim/vim/commit/e0bfb7d3016ccd6c2186b9cd74cee6538eea9b5e Author: Christian Brabandt Date: Sat Sep 2 19:12:31 2023 +0200 patch 9.0.1845: xxd: Test_xxd_color start failing Problem: xxd: Test_xxd_color start failing Solution: Revert changes to dump file Signed-off-by: Christian Brabandt diff --git a/src/testdir/dumps/Test_xxd_color_1.dump b/src/testdir/dumps/Test_xxd_color_1.dump index 38908618f..da6282104 100644 --- a/src/testdir/dumps/Test_xxd_color_1.dump +++ b/src/testdir/dumps/Test_xxd_color_1.dump @@ -14,3 +14,7 @@ |0@5|d|0|:| |d+2#e02&|0|d|1| +0#000&|d+2#e02&|2|d|3| +0#000&|d+2#e02&|4|d|5| +0#000&|d+2#e02&|6|d|7| +0#000&|d+2#e02&|8|d|9| +0#000&|d+2#e02&|a|d|b| +0#000&|d+2#e02&|c|d@1| +0#000&|d+2#e02&|e|d|f| +0#000&@1|.+2#e02&@15| +0#000&@7 |0@5|e|0|:| |e+2#e02&|0|e|1| +0#000&|e+2#e02&|2|e|3| +0#000&|e+2#e02&|4|e|5| +0#000&|e+2#e02&|6|e|7| +0#000&|e+2#e02&|8|e|9| +0#000&|e+2#e02&|a|e|b| +0#000&|e+2#e02&|c|e|d| +0#000&|e+2#e02&@2|f| +0#000&@1|.+2#e02&@15| +0#000&@7 |0@5|f|0|:| |f+2#e02&|0|f|1| +0#000&|f+2#e02&|2|f|3| +0#000&|f+2#e02&|4|f|5| +0#000&|f+2#e02&|6|f|7| +0#000&|f+2#e02&|8|f|9| +0#000&|f+2#e02&|a|f|b| +0#000&|f+2#e02&|c|f|d| +0#000&|f+2#e02&|e|f+2#e05&@1| +0#000&@1|.+2#e02&@14|.+2#e05&| +0#000&@7 +|$| > @72 +@75 +@75 +@75 diff --git a/src/testdir/dumps/Test_xxd_color_1.vim b/src/testdir/dumps/Test_xxd_color_1.vim index bc6226ad2..daf8dd390 100644 --- a/src/testdir/dumps/Test_xxd_color_1.vim +++ b/src/testdir/dumps/Test_xxd_color_1.vim @@ -1,3 +1,3 @@ " Filter that removes the Shell Prompt from the xxd command -18,20d +" 18,20d :1s#|\$+0&\#ff0| |.@1|/|x@1|d|/|x@1|d|.* #|$+0\&\#ff0| #e diff --git a/src/version.c b/src/version.c index 81bee3839..3de6046ff 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1845, /**/ 1844, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcUD9-00CJVI-AF%40256bit.org.
Re: vim9class: accessing statics from outside the class
On Sun, 3 Sept 2023 at 02:31, Ernie Rael wrote: > AFAICT, it doesn't work. Is anyone working on this? > > I've run into it while working https://github.com/vim/vim/pull/13007. > > I am taking a look, but I don't want duplicate efforts. > You can read them and write them at top-level but, from a quick test, only read them within a class definition. I am not looking into this at the moment. Regards, Doug -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/CAJ1uvoDHR59Yby1nGBa%3DXarJr7-x3QAEEcwxsvBdTXiv5QuDwQ%40mail.gmail.com.
vim9class: accessing statics from outside the class
AFAICT, it doesn't work. Is anyone working on this? I've run into it while working https://github.com/vim/vim/pull/13007. I am taking a look, but I don't want duplicate efforts. -ernie -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/49ac7706-b556-0166-984c-54598cf25d51%40raelity.com.
Commit: patch 9.0.1844: doc helptags may not be up to date
patch 9.0.1844: doc helptags may not be up to date Commit: https://github.com/vim/vim/commit/8b202031412a5de43a9c8257118ff99a018afabf Author: Yee Cheng Chin Date: Sat Sep 2 16:03:04 2023 +0200 patch 9.0.1844: doc helptags may not be up to date Problem: doc helptags may not be up to date Solution: Add CI jobs to verify helptags are updated Also, re-generate the tags file with updated list so it will pass CI. closes: #13012 Signed-off-by: Christian Brabandt diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 078e12cb2..036b36a39 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -242,6 +242,12 @@ jobs: do_test() { sg audio "sg $(id -gn) '$*'"; } do_test make ${SHADOWOPT} ${TEST} + - name: Vim tags +if: contains(matrix.extra, 'vimtags') +run: | + # This will exit with an error code if the generated vim tags differs from source. + git diff --exit-code -- runtime/doc/tags + - name: Generate gcov files if: matrix.coverage run: | diff --git a/runtime/doc/tags b/runtime/doc/tags index 8ee17028d..b390ef470 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -4442,6 +4442,7 @@ E1362 vim9class.txt /*E1362* E1363 vim9class.txt /*E1363* E1364 recover.txt /*E1364* E137 starting.txt/*E137* +E1370 vim9class.txt /*E1370* E138 starting.txt/*E138* E139 message.txt /*E139* E140 message.txt /*E140* @@ -8031,6 +8032,7 @@ i_CTRL-O insert.txt /*i_CTRL-O* i_CTRL-P insert.txt /*i_CTRL-P* i_CTRL-Q insert.txt /*i_CTRL-Q* i_CTRL-R insert.txt /*i_CTRL-R* +i_CTRL-R_- insert.txt /*i_CTRL-R_-* i_CTRL-R_= insert.txt /*i_CTRL-R_=* i_CTRL-R_CTRL-Oinsert.txt /*i_CTRL-R_CTRL-O* i_CTRL-R_CTRL-Pinsert.txt /*i_CTRL-R_CTRL-P* diff --git a/src/version.c b/src/version.c index ae2886484..81bee3839 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1844, /**/ 1843, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcROz-00C8QP-T3%40256bit.org.
Commit: patch 9.0.1843: xxd color test flaky
patch 9.0.1843: xxd color test flaky Commit: https://github.com/vim/vim/commit/b2422f75408a41c77620c0d0f956b9728810c6ef Author: Christian Brabandt Date: Sat Sep 2 16:01:18 2023 +0200 patch 9.0.1843: xxd color test flaky Problem: xxd color test flaky Solution: Filter unneeded lines Signed-off-by: Christian Brabandt diff --git a/src/testdir/dumps/Test_xxd_color_1.dump b/src/testdir/dumps/Test_xxd_color_1.dump index da6282104..38908618f 100644 --- a/src/testdir/dumps/Test_xxd_color_1.dump +++ b/src/testdir/dumps/Test_xxd_color_1.dump @@ -14,7 +14,3 @@ |0@5|d|0|:| |d+2#e02&|0|d|1| +0#000&|d+2#e02&|2|d|3| +0#000&|d+2#e02&|4|d|5| +0#000&|d+2#e02&|6|d|7| +0#000&|d+2#e02&|8|d|9| +0#000&|d+2#e02&|a|d|b| +0#000&|d+2#e02&|c|d@1| +0#000&|d+2#e02&|e|d|f| +0#000&@1|.+2#e02&@15| +0#000&@7 |0@5|e|0|:| |e+2#e02&|0|e|1| +0#000&|e+2#e02&|2|e|3| +0#000&|e+2#e02&|4|e|5| +0#000&|e+2#e02&|6|e|7| +0#000&|e+2#e02&|8|e|9| +0#000&|e+2#e02&|a|e|b| +0#000&|e+2#e02&|c|e|d| +0#000&|e+2#e02&@2|f| +0#000&@1|.+2#e02&@15| +0#000&@7 |0@5|f|0|:| |f+2#e02&|0|f|1| +0#000&|f+2#e02&|2|f|3| +0#000&|f+2#e02&|4|f|5| +0#000&|f+2#e02&|6|f|7| +0#000&|f+2#e02&|8|f|9| +0#000&|f+2#e02&|a|f|b| +0#000&|f+2#e02&|c|f|d| +0#000&|f+2#e02&|e|f+2#e05&@1| +0#000&@1|.+2#e02&@14|.+2#e05&| +0#000&@7 -|$| > @72 -@75 -@75 -@75 diff --git a/src/testdir/dumps/Test_xxd_color_1.vim b/src/testdir/dumps/Test_xxd_color_1.vim new file mode 100644 index 0..bc6226ad2 --- /dev/null +++ b/src/testdir/dumps/Test_xxd_color_1.vim @@ -0,0 +1,3 @@ +" Filter that removes the Shell Prompt from the xxd command +18,20d +:1s#|\$+0&\#ff0| |.@1|/|x@1|d|/|x@1|d|.* #|$+0\&\#ff0| #e diff --git a/src/testdir/test_xxd.vim b/src/testdir/test_xxd.vim index 66ffa54ad..437437ebc 100644 --- a/src/testdir/test_xxd.vim +++ b/src/testdir/test_xxd.vim @@ -577,6 +577,7 @@ func Test_xxd_color2() call system(s:xxd_cmd .. ' -r < Xinput > XXDfile_colors') + let $PS1='$ ' let buf = RunVimInTerminal('', #{rows: 20, cmd: 'sh'}) call term_sendkeys(buf, s:xxd_cmd .. " -R never < XXDfile_colors\") call TermWait(buf) @@ -591,5 +592,6 @@ func Test_xxd_color2() call term_sendkeys(buf, "exit\") call delete('XXDfile_colors') + unlet! $PS1 endfunc " vim: shiftwidth=2 sts=2 expandtab diff --git a/src/version.c b/src/version.c index a09c72513..ae2886484 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1843, /**/ 1842, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcROx-00C8Pv-MQ%40256bit.org.
Re: Commit: patch 9.0.1842: Need more accurate profiling
On 23/09/02 6:15 AM, Christian Brabandt wrote: patch 9.0.1842: Need more accurate profiling Commit:https://github.com/vim/vim/commit/21d3212361f687704acb52cad7c1b9228e7c83f0 Author: Ernie Rael Date: Sat Sep 2 15:09:18 2023 +0200 patch 9.0.1842: Need more accurate profiling Problem: Need more accurate profiling Solution: Improve profiling results closes: #12192 The tables such as |=== assign micro-prof === 50-100 100-50 200-2 : nLoops-nKeys (usec/op) 0.036 0.040 0.039 : var local = n_value ###-A 0.037 0.035 0.034 : local = C.static_var ###-D 0.059 0.055 0.050 : local = a_class.this_var ###-G 0.180 0.173 0.170 : local = a_class.Getter() ###-J| Are produced by vim9script import and shell/gawk scripts found at https://github.com/errael/vim-microprof The docs are minimal. If there is interest, the docs can be expanded. Otherwise it's there as is. -ernie -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/6aa825db-71b3-c56d-11e8-f64b4afc3251%40raelity.com.
Re: Commit: patch 9.0.1833: [security] runtime file fixes
On Sa, 02 Sep 2023, Anton Sharonov wrote: > Just to point out to one (probably not so desired?) sideffect: > after this patch my &path do not contain any of the @INC > directories of perl, if vim was started from /usr/bin (where > _real_ perl executable is sitting). Yes, I am aware of this. But I don't have a good solution to this currently. I am thinking to make the whole thing of running executables from filetype plugins opt-in for users and have it default off. Thanks, Christian -- Maybe Computer Science should be in the College of Theology. -- R. S. Barton -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/ZPM95nwu/OJiJZcn%40256bit.org.
Commit: translation(it): updated Italian xxd manpage
translation(it): updated Italian xxd manpage Commit: https://github.com/vim/vim/commit/67b0ecf754565ff4c09a1128677e9c6e83fcc1c2 Author: Antonio Giovanni Colombo Date: Sat Sep 2 15:11:58 2023 +0200 translation(it): updated Italian xxd manpage Signed-off-by: Christian Brabandt diff --git a/runtime/doc/xxd-it.1 b/runtime/doc/xxd-it.1 index 29f115b81..3c9c4404b 100755 --- a/runtime/doc/xxd-it.1 +++ b/runtime/doc/xxd-it.1 @@ -134,9 +134,9 @@ per leggere dump in stile esadecimale semplice, senza l'informazione del numero di riga e senza un particolare tracciato di colonna. Spazi o righe vuote possono essere presenti [e vengono ignorati]. .TP -.IR \-R " "[QUANDO] +.IR \-R " "[quando] Nell'output i valori esadecimali e i caratteri corrispondenti hanno entrambi lo stesso colore, a seconda del valore esadecimale. Utile soprattutto a distinguere i caratteri stampabili da quello non stampabili. -.I QUANDO +.I quando può assumere i valori .BR never ", " always ", o " auto . .TP diff --git a/runtime/doc/xxd-it.UTF-8.1 b/runtime/doc/xxd-it.UTF-8.1 old mode 100644 new mode 100755 index 5be512639..faa39f5bf --- a/runtime/doc/xxd-it.UTF-8.1 +++ b/runtime/doc/xxd-it.UTF-8.1 @@ -134,6 +134,12 @@ per leggere dump in stile esadecimale semplice, senza l'informazione del numero di riga e senza un particolare tracciato di colonna. Spazi o righe vuote possono essere presenti [e vengono ignorati]. .TP +.IR \-R " "[quando] +Nell'output i valori esadecimali e i caratteri corrispondenti hanno entrambi lo stesso colore, a seconda del valore esadecimale. Utile soprattutto a distinguere i caratteri stampabili da quello non stampabili. +.I quando +può assumere i valori +.BR never ", " always ", o " auto . +.TP .I \-seek distanza Usato con l'opzione .IR \-r : -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcQSz-00C4cH-KM%40256bit.org.
Commit: patch 9.0.1842: Need more accurate profiling
patch 9.0.1842: Need more accurate profiling Commit: https://github.com/vim/vim/commit/21d3212361f687704acb52cad7c1b9228e7c83f0 Author: Ernie Rael Date: Sat Sep 2 15:09:18 2023 +0200 patch 9.0.1842: Need more accurate profiling Problem: Need more accurate profiling Solution: Improve profiling results closes: #12192 Reduce overhead of checking if a function should be profiled, by caching results of checking (which are done with regexp). Cache uf_hash for uf_name in ufunc_T. Cache cleared when regexps are changed. Break at first match for has_profiling lookup. Signed-off-by: Christian Brabandt Co-authored-by: Ernie Rael diff --git a/src/debugger.c b/src/debugger.c index 393e11e41..66647ab46 100644 --- a/src/debugger.c +++ b/src/debugger.c @@ -528,6 +528,35 @@ static int has_expr_breakpoint = FALSE; #ifdef FEAT_PROFILE // Profiling uses file and func names similar to breakpoints. static garray_T prof_ga = {0, 0, sizeof(struct debuggy), 4, NULL}; + +// Profiling caches results of regexp lookups for function/script name. +#define N_PROF_HTAB 2 +static hashtab_T prof_cache[N_PROF_HTAB]; +#define PROF_HTAB_FUNCS 0 +#define PROF_HTAB_FILES 1 +static int prof_cache_initialized; +typedef struct profentry_S +{ +charpen_flags; // cache data booleans: profiling, forceit +char_u pen_name[1]; // actually longer +} profentry_T; +#define PEN_FLAG_PROFILING 1 +#define PEN_FLAG_FORCEIT 2 +#define PEN_SET_PROFILING(pe) ((pe)->pen_flags |= PEN_FLAG_PROFILING) +#define PEN_SET_FORCEIT(pe) ((pe)->pen_flags |= PEN_FLAG_FORCEIT) +#define PEN_IS_PROFILING(pe) (((pe)->pen_flags & PEN_FLAG_PROFILING) != 0) +#define PEN_IS_FORCEIT(pe) (((pe)->pen_flags & PEN_FLAG_FORCEIT) != 0) + +#define PE2HIKEY(pe) ((pe)->pen_name) +#define HIKEY2PE(p)((profentry_T *)((p) - (offsetof(profentry_T, pen_name +#define HI2PE(hi) HIKEY2PE((hi)->hi_key) + +static void prof_clear_cache(void); +#define PROF_CLEAR_CACHE(gap) do {if ((gap) == &prof_ga) prof_clear_cache();} while (0) +// Can enable to get some info about profile caching +// #define PROF_CACHE_LOG +#else +#define PROF_CLEAR_CACHE(gap) do {} while (0) #endif #define DBG_FUNC 1 #define DBG_FILE 2 @@ -708,6 +737,7 @@ ex_breakadd(exarg_T *eap) ++debug_tick; } ++gap->ga_len; + PROF_CLEAR_CACHE(gap); } } else @@ -845,6 +875,7 @@ ex_breakdel(exarg_T *eap) if (!del_all) break; } +PROF_CLEAR_CACHE(gap); // If all breakpoints were removed clear the array. if (gap->ga_len == 0) @@ -899,17 +930,102 @@ dbg_find_breakpoint( } #if defined(FEAT_PROFILE) || defined(PROTO) +#if defined(PROF_CACHE_LOG) +static int count_lookups[2]; +#endif /* * Return TRUE if profiling is on for a function or sourced file. + * Cache the results of debuggy_find(). + * Cache is cleared whenever prof_ga.ga_len is changed. */ int has_profiling( intfile, // TRUE for a file, FALSE for a function char_u *fname, // file or function name -int*fp)// return: forceit +int*fp,// return: forceit +hash_T *hashp) // use/return fname hash, may be NULL { -return (debuggy_find(file, fname, (linenr_T)0, &prof_ga, fp) - != (linenr_T)0); +if (prof_ga.ga_len == 0 || !prof_cache_initialized) + return debuggy_find(file, fname, (linenr_T)0, &prof_ga, fp) +!= (linenr_T)0; + +hash_T hash; +if (hashp != NULL) +{ + hash = *hashp; + if (hash == 0) + { + hash = hash_hash(fname); + *hashp = hash; + } +} +else + hash = hash_hash(fname); + +hashtab_T *ht = &prof_cache[file ? PROF_HTAB_FILES : PROF_HTAB_FUNCS]; +hashitem_T *hi = hash_lookup(ht, fname, hash); +profentry_T *pe; +if (HASHITEM_EMPTY(hi)) +{ + pe = alloc(offsetof(profentry_T, pen_name) + STRLEN(fname) + 1); + if (pe == NULL) + return FALSE; + STRCPY(pe->pen_name, fname); + pe->pen_flags = 0; + // run debuggy_find and capture return and forceit + int f; + int lnum = debuggy_find(file, fname, (linenr_T)0, &prof_ga, &f); + if (lnum) + { + PEN_SET_PROFILING(pe); + if (f) + PEN_SET_FORCEIT(pe); + } + hash_add_item(ht, hi, pe->pen_name, hash); +#if defined(PROF_CACHE_LOG) + ch_log(NULL, "has_profiling: %s %s forceit %s, profile %s", + file ? "file" : "func", fname, + PEN_IS_FORCEIT(pe) ? "true" : "false", + PEN_IS_PROFILING(pe) ? "true" : "false"); +#endif +} +else + pe = HI2PE(hi); +if (fp) + *fp = PEN_IS_FORCEIT(pe); +#if defined(PROF_CACHE_LOG) +
Commit: patch 9.0.1841: style: trailing whitespace in ex_cmds.c
patch 9.0.1841: style: trailing whitespace in ex_cmds.c Commit: https://github.com/vim/vim/commit/9d093fd05626aa19e5d9ff6d4b738a0f8f5deccb Author: Christian Brabandt Date: Sat Sep 2 15:07:24 2023 +0200 patch 9.0.1841: style: trailing whitespace in ex_cmds.c Problem: style: trailing whitespace in ex_cmds.c Solution: remove it Signed-off-by: Christian Brabandt diff --git a/src/ex_cmds.c b/src/ex_cmds.c index 9348b4edd..c30b6fddf 100644 --- a/src/ex_cmds.c +++ b/src/ex_cmds.c @@ -2646,11 +2646,11 @@ do_ecmd( goto theend; } - + // End Visual mode before switching to another buffer, so the text can be // copied into the GUI selection buffer. // Careful: may trigger ModeChanged() autocommand - + // Should we block autocommands here? reset_VIsual(); diff --git a/src/version.c b/src/version.c index 34878d749..7fd2ebcac 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ +1841, /**/ 1840, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1qcQSu-00C4b7-Iw%40256bit.org.
Commit: translation(en_GB): Update UK English translation (#13011)
translation(en_GB): Update UK English translation (#13011) Commit: https://github.com/vim/vim/commit/397e356d7b7693d06caacb08b28f219c6d69e36a Author: Mike Williams Date: Sat Sep 2 14:04:51 2023 +0100 translation(en_GB): Update UK English translation (https://github.com/vim/vim/issues/13011) Signed-off-by: Christian Brabandt diff --git a/src/po/en_GB.po b/src/po/en_GB.po index 239be0f6a..c03766112 100644 --- a/src/po/en_GB.po +++ b/src/po/en_GB.po @@ -3,17 +3,21 @@ # Do ":help uganda" in Vim to read copying and usage conditions. # Do ":help credits" in Vim to see a list of people who contributed. # -# FIRST AUTHOR Mike Williams , 2003. +# FIRST AUTHOR Mike Williams , 2003. # # Style Guide: # o English spelling! # o Colour, not color +# o -iour, not -ior # o -ise, not -ize. # o No contractions. # o Cannot, not can not. +# o White space, not whitespace # o Backward (no s) when used as an adjective. -# o Consistent capitalisation for first word after Ennn: -# o Consistent capitalisation of NetBeans and JSON +# o Command line for noun, command-line for adjective +# o Improve consistency of messages ... +# o - capitalisation for first English word after Ennn: +# o - capitalisation of: NetBeans, JSON, Python, Lisp, Cscope # o TBC ... # # As with all guides, they should be followed unless there is a reason why they @@ -21,12 +25,12 @@ # msgid "" msgstr "" -"Project-Id-Version: Vim 8.2 (UK English) " +"Project-Id-Version: Vim 9.0 (UK English) " "Report-Msgid-Bugs-To: " -"POT-Creation-Date: 2022-05-11 17:36+1000 " +"POT-Creation-Date: 2023-08-28 09:49+0100 " "PO-Revision-Date: 2022-05-12 10:05+1000 " "Last-Translator: Doug Kearns " -"Language-Team: Mike Williams " +"Language-Team: Mike Williams " "Language: en_GB " "MIME-Version: 1.0 " "Content-Type: text/plain; charset=ISO-8859-1 " @@ -56,12 +60,22 @@ msgstr "Cannot find temp file for conversion" msgid "can't read output of 'charconvert'" msgstr "cannot read output of 'charconvert'" -msgid "cscope connection %s closed" -msgstr "Cscope connection %s closed" +#, c-format +msgid "Added cscope database %s" +msgstr "Added Cscope database %s" + +msgid "All cscope databases reset" +msgstr "All Cscope databases reset" + +msgid "no cscope connections " +msgstr "no Cscope connections " msgid "couldn't open buffer" msgstr "could not open buffer" +msgid " Command-line completion (^V^N^P)" +msgstr " Command line completion (^V^N^P)" + msgid "netbeans is not supported with this GUI " msgstr "NetBeans is not supported with this GUI " @@ -95,7 +109,7 @@ msgid "+reverse Don't use reverse video (also: +rv)" msgstr "+reverse Do not use reverse video (also: +rv)" msgid "Messages maintainer: The Vim Project" -msgstr "Messages maintainer: Mike Williams " +msgstr "Messages maintainer: Mike Williams " msgid "VIM: Can't open window! " msgstr "VIM: Cannot open window! " @@ -140,11 +154,11 @@ msgstr "E166: Cannot open linked file for writing" msgid "E185: Cannot find color scheme '%s'" msgstr "E185: Cannot find colour scheme '%s'" -msgid "E205: Patchmode: Can't save original file" -msgstr "E205: Patchmode: Cannot save original file" +msgid "E205: Patchmode: can't save original file" +msgstr "E205: Patchmode: cannot save original file" -msgid "E206: Patchmode: Can't touch empty original file" -msgstr "E206: Patchmode: Cannot touch empty original file" +msgid "E206: Patchmode: can't touch empty original file" +msgstr "E206: Patchmode: cannot touch empty original file" msgid "E207: Can't delete backup file" msgstr "E207: Cannot delete backup file" @@ -158,6 +172,9 @@ msgstr "E214: Cannot find temp file for writing" msgid "E217: Can't execute autocommands for ALL events" msgstr "E217: Cannot execute autocommands for ALL events" +msgid "E242: Can't split a window while closing another" +msgstr "E242: Cannot split a window while closing another" + #, c-format msgid "E254: Cannot allocate color %s" msgstr "E254: Cannot allocate colour %s" @@ -165,24 +182,20 @@ msgstr "E254: Cannot allocate colour %s" msgid "E255: Couldn't read in sign data" msgstr "E255: Could not read in sign data" +#, c-format +msgid "E259: No matches found for cscope query %s of %s" +msgstr "E259: No matches found for Cscope query %s of %s" + +#, c-format +msgid "E262: Error reading cscope connection %d" +msgstr "E262: Error reading Cscope connection %d" + msgid "E288: Input method doesn't support any style" msgstr "E288: Input method does not support any style" msgid "E289: Input method doesn't support my preedit type" msgstr "E289: Input method does not support my preedit type" -msgid "E298: Didn't get block nr 0?" -msgstr "E298: Did not get block nr 0?" - -msgid "E298: Didn't get block nr 1?" -msgstr "E298: Did not get block nr 1?" - -msgid "E298: Didn't get block nr 2?" -msgstr "E298: Did not get block nr 2?" - -msgid "E304: ml_upd_block0(): Didn't get block 0??" -msgstr "E304: ml_upd_block0(): Did
Commit: patch 9.0.1840: [security] use-after-free in do_ecmd
patch 9.0.1840: [security] use-after-free in do_ecmd Commit: https://github.com/vim/vim/commit/e1dc9a627536304bc4f738c21e909ad9fcf3974c Author: Christian Brabandt Date: Sat Sep 2 14:40:13 2023 +0200 patch 9.0.1840: [security] use-after-free in do_ecmd Problem: use-after-free in do_ecmd Solution: Verify oldwin pointer after reset_VIsual() Signed-off-by: Christian Brabandt diff --git a/src/ex_cmds.c b/src/ex_cmds.c index 20d4d9a2e..9348b4edd 100644 --- a/src/ex_cmds.c +++ b/src/ex_cmds.c @@ -2646,12 +2646,18 @@ do_ecmd( goto theend; } -/* - * End Visual mode before switching to another buffer, so the text can be - * copied into the GUI selection buffer. - */ + + // End Visual mode before switching to another buffer, so the text can be + // copied into the GUI selection buffer. + // Careful: may trigger ModeChanged() autocommand + +// Should we block autocommands here? reset_VIsual(); +// autocommands freed window :( +if (oldwin != NULL && !win_valid(oldwin)) + oldwin = NULL; + #if defined(FEAT_EVAL) if ((command != NULL || newlnum > (linenr_T)0) && *get_vim_var_str(VV_SWAPCOMMAND) == NUL) diff --git a/src/testdir/Make_all.mak b/src/testdir/Make_all.mak index e2e29f12d..961718fd6 100644 --- a/src/testdir/Make_all.mak +++ b/src/testdir/Make_all.mak @@ -105,6 +105,7 @@ NEW_TESTS = \ test_conceal \ test_const \ test_cpoptions \ + test_crash \ test_crypt \ test_cscope \ test_cursor_func \ @@ -369,6 +370,7 @@ NEW_TESTS_RES = \ test_conceal.res \ test_const.res \ test_cpoptions.res \ + test_crash.res \ test_crypt.res \ test_cscope.res \ test_cursor_func.res \ diff --git a/src/testdir/crash/poc_huaf1 b/src/testdir/crash/poc_huaf1 new file mode 100644 index ..0d0ea475c1062a4df89ee505a078ecc578d57f22 GIT binary patch literal 1541 zcmdT^L1+^}6#bFpkWY-Gg&?9hDH20XHRRUlp&~|MsiHx0NfqmkTVSd84y?Yk~#Y5W5_-E6^ZW0j-9(;${|L4CyGk^b^*#;6}Y6Z)z z)l^t&HebH;tY$NjNMu)7dyIU!S`cxj5Metx`>HH{JD`mXr-Z05_p|G|#Xc;uz2Z7$ z5Ymh#*FS7$Y&UHdI-5F(v@K_?Gh}hVQrVixUM8Nmyh@n(WsfMIu~dL@c7rimB%ZQ|9s#=Fttxs|q1n7Ie78DC!y<_cq?IYhW zDK0>jYq##05Lf?Ym&&1hKp{7({)si0IFK%x|TSx&OV7*L;2axIDl7@O*zC)7b6f zZ+qBLF87o>(oyc~F3KHnp7o-B+1u&OwVOOio=aJqHn! zN;`^m6Aaa*LtF)?cFEAe-Cc-?4kgR;dv|T}dJWN(A{F{U?!LeGzVGhxd$$iH!rfKO zv$d*{CHj5xv}(1#zkhg@MZb+_L?0ums{?-=`Y>l_v!g#pQbVWWLKIo;YpqtxZjpI* zT-;|-Rb(=Dwz0CGu_Lrl_J+geS1=L0|g-*H0 zeq-B6@dO=aKxychDtd#?SKujlfdq=nLWTslr_i1{Z%+uGKFxLU%chg5;sq=UUYx#V zl_pB1(qgG}@fZx^AYAe$4~Juu;d8NtkytEj!^>IBU{2_QRvG!|7Y0@Vt%4!Zl}|(n znZ$=E=Ox*E)FR{8J(&$*?ln?cIe{4(LCr~Bk2PnUOQs-1vpy^Lh!@_RL;jqOiMJ`Y zq6q*n&HP6yJqhS$sRlr!oBU3>%Yoox%cib)%WA8E+wA;p+l1{pmw0Y1So=BX=xD#{ z82xX8-rIb0jC=puG&;r}M0O4$bu>B)Ko95{M-9UPPzY7%Jgg8(r~wpG$ij>UMowUq zCkF_QJ~a#L)O1W8zVtj*Jux={gyf1(E;98bMX&WlFNt2=HXF!uasy><=f(c$6)gu! zH4;!{rb|WzF6Nsn8{XBXxbo44bL;utR#zJjb+$X8z0jt)rfc^=yV+8uvIlMLX6&50 z2klK?e#?P7tC8g|zA^mbo&9>;4*2zbz@RNaxBs*+Na@l}VbtX;X2l46-?ZrlkzvN2s>CM?nSK@o(}(a~5P1K)0^#Rw7_s^Jej$%*4(Aq=d2t<`Fo4lLjiaR&p4 zVT>T2YJJ*^c#!t+UJIWD+KprLDp8z4p;*etZjsUe?&nH5URk5Z>2Gu$ zh##fq5mOYH5yibu{blx;*^DTNOG1_e*9)K*&gip(r%rG;oMm%~q;U=m!Hv0_nl)=# z)}m!yILyXjoL#gn_j*Hl@9EI%$xz6vv*+`WhMaH%vy`livub?$d4EZxz6i3dA&R~MxNgu5@y65St&5pdJ3p0qj;-2 zZb?J8kaEpGf+X~Dr$OGY_6Wup_Nb!wS~h%uBmd*TNR=Fzm-27Vfyic2hd+N8Z}>l$Us}xv2m#KX()OulR%P+rK+tkbOH` zdqvF*vTtYgGN>RntROlZ$UU+1vafC3d$)~$McXCUjV!lI%iz;tXn=ofIJ8cjs#Gb< a^Z@raUc`65C$U^n#{xRr?JLgYx76 literal 0 HcmV?d1 diff --git a/src/testdir/dumps/Test_crash_01.dump b/src/testdir/dumps/Test_crash_01.dump new file mode 100644 index 0..1f0fd44c0 --- /dev/null +++ b/src/testdir/dumps/Test_crash_01.dump @@ -0,0 +1,20 @@ +> +0ff0@74 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 +@75 diff --git a/src/testdir/test_crash.vim b/src/testdir/test_crash.vim new file mode 100644 index 0..0dea3c2cb --- /dev/null +++ b/src/testdir/test_crash.vim @@ -0,0 +1,25 @@ +" Some tests, that used to crash Vim +source check.vim +source screendump.vim + +CheckScreendump + +func Test_crash1() + " The following used to crash Vim + let opts = #{wait_for_ruler: 0} + let args = ' -u NONE -i NONE -n -e -s -S ' + let buf = RunVimInTerminal(args .. ' crash/poc_huaf1', opts) + call VerifyScreenDump(buf, 'Test_crash_01', {}) + exe buf .. "bw!" + + let buf = RunVimInTerminal(args .. ' crash/poc_huaf2', opts) + call VerifyScreenDump(buf, 'Test_crash_01', {}) + exe buf .. "bw!" + + let buf = RunVimInTerminal(args .. ' crash/poc_huaf3', opts) + call VerifyScreenDump(buf, 'Test_crash_01', {}) + exe buf .. "bw!" + +endfunc + +" vim: shiftwidth=2 sts=2 expandtab diff --git a/src/version.c b/src/version.c index 5f6995cc6..34878d749 100644 --- a/src/version.c +++ b/src/version.c @@ -699,6 +699,8 @@ static char *(features[]) = static int included_patch
Re: Vim9 class/object member access control
On Sat, Sep 2, 2023 at 5:02 AM Yegappan Lakshmanan wrote: > > Hi all, > > The access control to readonly, read-write and private members in a > class/object discussed in https://github.com/vim/vim/discussions/12979 > should all work now. Let us know if there are any cases where the > access control is not correctly enforced. > > When testing these, I found an existing memory corruption issue > with class member variables. When a class member uses a complex > type (e.g. List or Dict), then it is garbage collected under some > conditions leading to a memory corruption (reported by ASAN and > Valgrind). I am still debugging this issue. > Correction: This is a use-after-free problem and not a memory corruption. - Yegappan -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/CAAW7x7%3Dzemkp07%2BwqU3rPr6tMk9PTmQgp_tKa4Kc4RiJ1CbutA%40mail.gmail.com.
Vim9 class/object member access control
Hi all, The access control to readonly, read-write and private members in a class/object discussed in https://github.com/vim/vim/discussions/12979 should all work now. Let us know if there are any cases where the access control is not correctly enforced. When testing these, I found an existing memory corruption issue with class member variables. When a class member uses a complex type (e.g. List or Dict), then it is garbage collected under some conditions leading to a memory corruption (reported by ASAN and Valgrind). I am still debugging this issue. Regards, Yegappan -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/CAAW7x7kbtM_%2B7sSYPmz6YwZ1%3DruA9t9Rpf35G%2Bx4cMnMpiqVXQ%40mail.gmail.com.