1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-29 14:26:39 +02:00

core: fix truncated messages after a word with a length of zero on screen (bug #40985, issue #502)

This commit is contained in:
Sébastien Helleu
2015-08-23 09:50:36 +02:00
parent aa8b68363e
commit e179a34a40
3 changed files with 7 additions and 3 deletions
+2
View File
@@ -26,6 +26,8 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
=== Bugs fixed
* core: fix truncated messages after a word with a length of zero on screen
(for example a zero width space: U+200B) (bug #40985, issue #502)
* irc: fix display of messages sent to server in raw buffer
* irc: fix display of invalid UTF-8 chars in raw buffer
+2 -2
View File
@@ -1365,13 +1365,13 @@ gui_chat_display_line (struct t_gui_window *window, struct t_gui_line *line,
ptr_end_offset = ptr_data + word_end_offset;
/* if message ends with spaces, display them */
if ((word_length == 0) && (word_length_with_spaces > 0)
if ((word_length <= 0) && (word_length_with_spaces > 0)
&& !ptr_data[word_end_offset + 1])
{
word_length = word_length_with_spaces;
}
if (word_length > 0)
if (word_length >= 0)
{
line_align = gui_line_get_align (window->buffer, line, 1,
(lines_displayed == 0) ? 1 : 0);
+3 -1
View File
@@ -332,7 +332,7 @@ gui_chat_get_word_info (struct t_gui_window *window,
*word_start_offset = 0;
*word_end_offset = 0;
*word_length_with_spaces = 0;
*word_length = 0;
*word_length = -1;
start_data = data;
@@ -354,6 +354,8 @@ gui_chat_get_word_info (struct t_gui_window *window,
*word_end_offset = next_char2 - start_data - 1;
char_size_screen = gui_chat_char_size_screen (next_char);
(*word_length_with_spaces) += char_size_screen;
if (*word_length < 0)
*word_length = 0;
(*word_length) += char_size_screen;
}
else