diff -pur gdb-6.6.orig/gdb/tui/tui-command.c gdb-6.6/gdb/tui/tui-command.c --- gdb-6.6.orig/gdb/tui/tui-command.c 2005-12-23 11:10:02.000000000 -0800 +++ gdb-6.6/gdb/tui/tui-command.c 2007-05-15 14:46:12.000000000 -0700 @@ -32,6 +32,7 @@ #include "gdb_curses.h" #include "gdb_string.h" +#include /***************************************** ** STATIC LOCAL FUNCTIONS FORWARD DECLS ** @@ -112,11 +113,23 @@ tui_dispatch_ctrl_char (unsigned int ch) break; case KEY_DOWN: case KEY_SF: - tui_scroll_forward (win_info, 1); + if (tui_current_key_mode == TUI_ONE_COMMAND_MODE) + { + rl_get_next_history (1, 0); + rl_redisplay (); + } + else + tui_scroll_forward (win_info, 1); break; case KEY_UP: case KEY_SR: - tui_scroll_backward (win_info, 1); + if (tui_current_key_mode == TUI_ONE_COMMAND_MODE) + { + rl_get_previous_history (1, 0); + rl_redisplay (); + } + else + tui_scroll_backward (win_info, 1); break; case KEY_RIGHT: tui_scroll_left (win_info, 1);