vim-patch:8.2.4753: error from setting an option is silently ignored (#19888)

Problem:    Error from setting an option is silently ignored.
Solution:   Handle option value errors better.  Fix uses of N_().
31e5c60a68
This commit is contained in:
zeertzjq
2022-08-22 13:56:50 +08:00
committed by GitHub
parent d4d27c41b3
commit 2bed0d1d97
20 changed files with 112 additions and 83 deletions

View File

@@ -544,9 +544,9 @@ void ex_listdo(exarg_T *eap)
// Clear 'shm' to avoid that the file message overwrites
// any output from the command.
p_shm_save = (char *)vim_strsave(p_shm);
set_option_value("shm", 0L, "", 0);
set_option_value_give_err("shm", 0L, "", 0);
do_argfile(eap, i);
set_option_value("shm", 0L, p_shm_save, 0);
set_option_value_give_err("shm", 0L, p_shm_save, 0);
xfree(p_shm_save);
}
if (curwin->w_arg_idx != i) {
@@ -613,9 +613,9 @@ void ex_listdo(exarg_T *eap)
// Go to the next buffer. Clear 'shm' to avoid that the file
// message overwrites any output from the command.
p_shm_save = (char *)vim_strsave(p_shm);
set_option_value("shm", 0L, "", 0);
set_option_value_give_err("shm", 0L, "", 0);
goto_buffer(eap, DOBUF_FIRST, FORWARD, next_fnum);
set_option_value("shm", 0L, p_shm_save, 0);
set_option_value_give_err("shm", 0L, p_shm_save, 0);
xfree(p_shm_save);
// If autocommands took us elsewhere, quit here.
@@ -636,9 +636,9 @@ void ex_listdo(exarg_T *eap)
// Clear 'shm' to avoid that the file message overwrites
// any output from the command.
p_shm_save = (char *)vim_strsave(p_shm);
set_option_value("shm", 0L, "", 0);
set_option_value_give_err("shm", 0L, "", 0);
ex_cnext(eap);
set_option_value("shm", 0L, p_shm_save, 0);
set_option_value_give_err("shm", 0L, p_shm_save, 0);
xfree(p_shm_save);
// If jumping to the next quickfix entry fails, quit here.