Index: fhandler.h =================================================================== RCS file: /cvs/src/src/winsup/cygwin/fhandler.h,v retrieving revision 1.162 diff -u -p -r1.162 fhandler.h --- fhandler.h 12 May 2003 11:06:25 -0000 1.162 +++ fhandler.h 21 May 2003 14:14:39 -0000 @@ -754,7 +754,8 @@ class dev_console unsigned rarg; bool saw_question_mark; + int prev_title_len; char my_title_buf [TITLESIZE + 1]; WORD current_win32_attr; ansi_intensity intensity; Index: fhandler_console.cc =================================================================== RCS file: /cvs/src/src/winsup/cygwin/fhandler_console.cc,v retrieving revision 1.110 diff -u -p -r1.110 fhandler_console.cc --- fhandler_console.cc 8 Apr 2003 21:19:33 -0000 1.110 +++ fhandler_console.cc 21 May 2003 14:14:41 -0000 @@ -78,8 +78,10 @@ str_to_con (char *d, const char *s, DWOR * Negative values represents current screen dimensions */ -#define srTop (dev_state->info.winTop + dev_state->scroll_region.Top) -#define srBottom ((dev_state->scroll_region.Bottom < 0) ? dev_state->info.winBottom : dev_state->info.winTop + dev_state->scroll_region.Bottom) +#define srTop (dev_state->scroll_region.Top) +#define srBottom ((dev_state->scroll_region.Bottom < 0) ? dev_state->info.winBottom : dev_state->scroll_region.Bottom) #define use_tty ISSTATE (myself, PID_USETTY) @@ -112,6 +114,10 @@ fhandler_console::get_tty_stuff (int fla shared_console_info->tty_min_state.setsid (myself->sid); shared_console_info->tty_min_state.set_ctty (TTY_CONSOLE, flags); + GetConsoleTitle(dev_state->my_title_buf, TITLESIZE); + dev_state->prev_title_len = strlen(dev_state->my_title_buf); + strcpy(dev_state->my_title_buf+dev_state->prev_title_len, " | "); + dev_state->prev_title_len += 3; dev_state->scroll_region.Bottom = -1; dev_state->dwLastCursorPosition.X = -1; dev_state->dwLastCursorPosition.Y = -1; @@ -1504,7 +1565,8 @@ fhandler_console::write (const void *vsr else if (*src == ']') { dev_state->rarg = 0; - dev_state->my_title_buf[0] = '\0'; + dev_state->my_title_buf[dev_state->prev_title_len-3] = ' '; + dev_state->my_title_buf[dev_state->prev_title_len] = '\0'; dev_state->state_ = gotrsquare; } else if (*src == 'M') /* Reverse Index */ @@ -1578,6 +1640,12 @@ fhandler_console::write (const void *vsr { if (*src == '\007' && dev_state->state_ == gettitle) { + if (n == dev_state->prev_title_len) + { + /* 3 == length " | " */ + n -= 3; + dev_state->my_title_buf[n] = '\0'; + } if (old_title) strcpy (old_title, dev_state->my_title_buf); set_console_title (dev_state->my_title_buf);