From 1b2f4108fde1ace64917406fb7df2013533fc0a1 Mon Sep 17 00:00:00 2001 From: Sebastien Helleu Date: Mon, 27 Jan 2014 18:32:32 +0100 Subject: [PATCH] core: fix display of read marker when all buffers line are unread MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The bug is when all buffer lines are unread (so "last_read_line" pointer is NULL), and that the option weechat.look.read_marker_always_show is on. The read marker was displayed at bottom after switch to the buffer. Thanks to Nils Görs. --- ChangeLog | 2 ++ src/gui/curses/gui-curses-window.c | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 511a02cfd..8725ef85f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -11,6 +11,8 @@ http://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes] == Version 0.4.3 (under dev) +* core: fix display of read marker when all buffers line are unread and that + option weechat.look.read_marker_always_show is on * core: fix memory leak in regex matching when evaluating expression * core: add signals "signal_sighup" and "signal_sigwinch" (terminal resized) * core: add command /print, add support of more escaped chars in command diff --git a/src/gui/curses/gui-curses-window.c b/src/gui/curses/gui-curses-window.c index b728c851e..2a640083c 100644 --- a/src/gui/curses/gui-curses-window.c +++ b/src/gui/curses/gui-curses-window.c @@ -1302,7 +1302,9 @@ gui_window_switch_to_buffer (struct t_gui_window *window, } if (CONFIG_BOOLEAN(config_look_read_marker_always_show) - && set_last_read && !window->buffer->lines->last_read_line) + && set_last_read + && !window->buffer->lines->last_read_line + && !window->buffer->lines->first_line_not_read) { window->buffer->lines->last_read_line = window->buffer->lines->last_line; }