Memory could be leaked if a second prompt or message appeared while another was

still present, so add a separate prompt free callback and make the _clear
function responsible for calling it if necessary (rather than the individual
prompt callbacks). Also make both messages and prompts clear any existing when
a new is set.

In addition, the screen could be modified while the prompt is there, restore
the redraw-entire-screen behaviour on prompt clear; add a comment as a
reminder.
This commit is contained in:
Nicholas Marriott
2009-07-17 06:13:27 +00:00
parent 9642f0373f
commit 65deba3a35
6 changed files with 61 additions and 34 deletions

View File

@ -171,8 +171,8 @@ server_lock(void)
continue;
status_prompt_clear(c);
status_prompt_set(
c, "Password: ", server_lock_callback, c, PROMPT_HIDDEN);
status_prompt_set(c,
"Password: ", server_lock_callback, c, NULL, PROMPT_HIDDEN);
server_redraw_client(c);
}
server_locked = 1;