diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2004-06-19 17:22:53 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2004-06-19 17:22:53 +0000 |
commit | 95ce326e5b47b4b841849f8a2ac7b96d6e204dfb (patch) | |
tree | f1f8fce3073ae00b372d26b4aaf681355a82cfd0 | |
parent | a5448a7de5bb35553a97c4e337ef2ef6fe8d3ccc (diff) |
buffer overflow fix - printf format fix
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@931 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r-- | monitor.c | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -1437,7 +1437,7 @@ static void term_show_prompt(void) static void term_print_cmdline (const char *cmdline) { term_show_prompt(); - term_printf(cmdline); + term_printf("%s", cmdline); term_flush(); } @@ -1521,7 +1521,8 @@ static void term_up_char(void) } term_hist_entry--; if (term_hist_entry >= 0) { - strcpy(term_cmd_buf, term_history[term_hist_entry]); + pstrcpy(term_cmd_buf, sizeof(term_cmd_buf), + term_history[term_hist_entry]); term_printf("\n"); term_print_cmdline(term_cmd_buf); term_cmd_buf_index = term_cmd_buf_size = strlen(term_cmd_buf); @@ -1533,7 +1534,8 @@ static void term_down_char(void) if (term_hist_entry == TERM_MAX_CMDS - 1 || term_hist_entry == -1) return; if (term_history[++term_hist_entry] != NULL) { - strcpy(term_cmd_buf, term_history[term_hist_entry]); + pstrcpy(term_cmd_buf, sizeof(term_cmd_buf), + term_history[term_hist_entry]); } else { term_hist_entry = -1; } |