fix(cmdline): encode no prompt in cmdline_show.hl_id

Problem:  Unable to distinguish an empty prompt from no prompt in
          cmdline_show event.
Solution: Set cmdline_show.hl_id to -1 when no prompt is active.
This commit is contained in:
Luuk van Baal
2026-05-22 21:16:16 +02:00
committed by luukvbaal
parent 60a46036c0
commit d16bd456a8
4 changed files with 29 additions and 24 deletions

View File

@@ -3673,8 +3673,8 @@ static void ui_ext_cmdline_show(CmdlineInfo *line)
char charbuf[2] = { (char)line->cmdfirstc, 0 };
ui_call_cmdline_show(content, line->cmdpos,
cstr_as_string(charbuf),
cstr_as_string((line->cmdprompt)),
line->cmdindent, line->level, line->hl_id);
cstr_as_string(line->cmdprompt),
line->cmdindent, line->level, line->cmdprompt ? line->hl_id : -1);
if (line->special_char) {
charbuf[0] = line->special_char;
ui_call_cmdline_special_char(cstr_as_string(charbuf),