# # # patch "ChangeLog" # from [f17e3a4cd4bfbcbb8a7e720e43446cb0449e81ca] # to [6cac40596f37ef66e0b72085b4f2982ec6286ee1] # # patch "ui.cc" # from [73b25bb821e7a820d70dfcb2991163070f2e4894] # to [68ab8df4ae09aaecfcd03f8830111a8f425478bb] # ============================================================ --- ChangeLog f17e3a4cd4bfbcbb8a7e720e43446cb0449e81ca +++ ChangeLog 6cac40596f37ef66e0b72085b4f2982ec6286ee1 @@ -1,5 +1,9 @@ 2005-12-06 Matthew Gregan + * ui.cc (write_ticks): Move CR out of tickline2; output it where + required instead. Fixes brokeness of 'count' ticker on Win32 (and + perhaps elsewhere) that was causing each line redraw to be written + on a new line. * contrib/usher.cc (fork_server): Avoid getting stuck in an infinte loop attempting to read() from a stream that has reached EOF before we've read anything from it. This can occur if ============================================================ --- ui.cc 73b25bb821e7a820d70dfcb2991163070f2e4894 +++ ui.cc 68ab8df4ae09aaecfcd03f8830111a8f425478bb @@ -86,7 +86,7 @@ bool first_tick = true; tickline1 = "monotone: "; - tickline2 = "\rmonotone:"; + tickline2 = "monotone:"; unsigned int width; unsigned int minwidth = 7; @@ -173,13 +173,11 @@ } if (tw && display_width(utf8(tickline2)) > tw) { - // first character in tickline2 is "\r", which does not take up any - // width, so we add 1 to compensate. // FIXME: may chop off more than necessary (because we chop by // bytes, not by characters) - tickline2.resize(tw + 1); + tickline2.resize(tw); } - clog << tickline2; + clog << "\r" << tickline2; clog.flush(); }