(svn r9731) -Fix [FS#677]: in news history, newlines weren't replaced with spaces, making it look ugly from time to time
authortruelight
Sat, 28 Apr 2007 10:41:00 +0000
changeset 7038 60b0e082723c
parent 7037 3cd1bd7a6edb
child 7039 a20ddaf4dc97
(svn r9731) -Fix [FS#677]: in news history, newlines weren't replaced with spaces, making it look ugly from time to time
src/news_gui.cpp
--- a/src/news_gui.cpp	Fri Apr 27 21:35:02 2007 +0000
+++ b/src/news_gui.cpp	Sat Apr 28 10:41:00 2007 +0000
@@ -620,15 +620,21 @@
 	 * from it such as big fonts, etc. */
 	ptr  = buffer;
 	dest = buffer2;
+	WChar c_last = '\0';
 	for (;;) {
 		WChar c = Utf8Consume(&ptr);
 		if (c == 0) break;
-		if (c == '\r') {
+		/* Make a space from a newline, but ignore multiple newlines */
+		if (c == '\n' && c_last != '\n') {
+			dest[0] = ' ';
+			dest++;
+		} else if (c == '\r') {
 			dest[0] = dest[1] = dest[2] = dest[3] = ' ';
 			dest += 4;
 		} else if (IsPrintable(c)) {
 			dest += Utf8Encode(dest, c);
 		}
+		c_last = c;
 	}
 
 	*dest = '\0';