patch 8.2.2289: Vim9: 'cpo' can become empty
Problem: Vim9: 'cpo' can become empty.
Solution: Use empty_option instead of an empty string. Update quickfix
buffer after restoring 'cpo'. (closes #7608)
diff --git a/src/testdir/test_quickfix.vim b/src/testdir/test_quickfix.vim
index 888c2f4..8667631 100644
--- a/src/testdir/test_quickfix.vim
+++ b/src/testdir/test_quickfix.vim
@@ -702,6 +702,26 @@
call s:test_xhelpgrep('l')
endfunc
+def Test_helpgrep_vim9_restore_cpo()
+ assert_equal('aABceFs', &cpo)
+
+ var rtp_save = &rtp
+ var dir = 'Xruntime/after'
+ &rtp ..= ',' .. dir
+ mkdir(dir .. '/ftplugin', 'p')
+ writefile(['vim9'], dir .. '/ftplugin/qf.vim')
+ filetype plugin on
+ silent helpgrep grail
+ cwindow
+ silent helpgrep grail
+
+ assert_equal('aABceFs', &cpo)
+ delete(dir, 'rf')
+ &rtp = rtp_save
+ cclose
+ helpclose
+enddef
+
func Test_errortitle()
augroup QfBufWinEnter
au!