comparison src/usercmd.c @ 29377:48b086982c01 v9.0.0031

patch 9.0.0031: <cmod> of user command does not have correct verbose value Commit: https://github.com/vim/vim/commit/9359e8a6d99fe2abfcbb9603339f1740d8870cc6 Author: zeertzjq <zeertzjq@outlook.com> Date: Sun Jul 3 13:16:09 2022 +0100 patch 9.0.0031: <cmod> of user command does not have correct verbose value Problem: <cmod> of user command does not have correct verbose value. Solution: Use the value from the command modifier. (closes https://github.com/vim/vim/issues/10651)
author Bram Moolenaar <Bram@vim.org>
date Sun, 03 Jul 2022 14:30:06 +0200
parents add09d468c0d
children 5c390aa28f44
comparison
equal deleted inserted replaced
29376:1538a0d4a85e 29377:48b086982c01
1490 if (cmod->cmod_flags & CMOD_SILENT) 1490 if (cmod->cmod_flags & CMOD_SILENT)
1491 result += add_cmd_modifier(buf, 1491 result += add_cmd_modifier(buf,
1492 (cmod->cmod_flags & CMOD_ERRSILENT) ? "silent!" 1492 (cmod->cmod_flags & CMOD_ERRSILENT) ? "silent!"
1493 : "silent", &multi_mods); 1493 : "silent", &multi_mods);
1494 // :verbose 1494 // :verbose
1495 if (p_verbose > 0) 1495 if (cmod->cmod_verbose > 0)
1496 result += add_cmd_modifier(buf, "verbose", &multi_mods); 1496 {
1497 int verbose_value = cmod->cmod_verbose - 1;
1498
1499 if (verbose_value == 1)
1500 result += add_cmd_modifier(buf, "verbose", &multi_mods);
1501 else
1502 {
1503 char verbose_buf[NUMBUFLEN];
1504
1505 sprintf(verbose_buf, "%dverbose", verbose_value);
1506 result += add_cmd_modifier(buf, verbose_buf, &multi_mods);
1507 }
1508 }
1497 // flags from cmod->cmod_split 1509 // flags from cmod->cmod_split
1498 result += add_win_cmd_modifers(buf, cmod, &multi_mods); 1510 result += add_win_cmd_modifers(buf, cmod, &multi_mods);
1511
1499 if (quote && buf != NULL) 1512 if (quote && buf != NULL)
1500 { 1513 {
1501 buf += result - 2; 1514 buf += result - 2;
1502 *buf = '"'; 1515 *buf = '"';
1503 } 1516 }