1
0
mirror of https://github.com/moparisthebest/hexchat synced 2024-11-22 09:12:22 -05:00

Fix scrollback_load to deal with e.g. the output of /HELP

Fixes #928.
This commit is contained in:
RichardHitt 2014-03-29 14:27:23 -07:00
parent 1a3bfdce75
commit 4ca9672a92

View File

@ -303,6 +303,12 @@ scrollback_load (session *sess)
buf = g_strndup (buf_tmp, n_bytes);
g_free (buf_tmp);
/*
* Some scrollback lines have three blanks after the timestamp and a newline
* Some have only one blank and a newline
* Some don't even have a timestamp
* Some don't have any text at all
*/
if (buf[0] == 'T')
{
if (sizeof (time_t) == 4)
@ -310,7 +316,7 @@ scrollback_load (session *sess)
else
stamp = strtoull (buf + 2, NULL, 10); /* in case time_t is 64 bits */
text = strchr (buf + 3, ' ');
if (text)
if (text && text[1])
{
if (prefs.hex_text_stripcolor_replay)
{
@ -324,8 +330,19 @@ scrollback_load (session *sess)
g_free (text);
}
}
lines++;
else
{
fe_print_text (sess, " ", stamp, TRUE);
}
}
else
{
if (strlen (buf))
fe_print_text (sess, buf, 0, TRUE);
else
fe_print_text (sess, " ", 0, TRUE);
}
lines++;
g_free (buf);
}