--- a/news_gui.c Tue May 15 21:24:18 2007 +0000
+++ b/news_gui.c Tue May 15 21:42:27 2007 +0000
@@ -602,6 +602,7 @@
const char *ptr;
char *dest;
StringID str;
+ WChar c_last;
if (ni->display_mode == 3) {
str = _get_news_string_callback[ni->callback](ni);
@@ -615,15 +616,21 @@
* from it such as big fonts, etc. */
ptr = buffer;
dest = buffer2;
+ 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';