From 8a6a4ae7d13d5b1a0c4502e4f5995c064b5fae73 Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Thu, 15 Aug 2019 22:45:32 +0200 Subject: [PATCH] Ref T709, use std::advance for message iterator --- src/xswiftbus/messages.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/xswiftbus/messages.cpp b/src/xswiftbus/messages.cpp index 2e3e5aa61..f64226069 100644 --- a/src/xswiftbus/messages.cpp +++ b/src/xswiftbus/messages.cpp @@ -169,8 +169,14 @@ namespace XSwiftBus void CMessageBoxControl::updateVisibleLines() { const size_t lines = std::min(m_messages.size(), m_maxVisibleLines); - const auto end = m_messages.cbegin() + m_position; - m_messageBox.setMessages(end - lines, end); + // const auto end = m_messages.cbegin() + m_position; + // m_messageBox.setMessages(end - lines, end); + auto end = m_messages.begin(); + std::advance(end, m_position); + auto start = end; + std::advance(start, -1 * static_cast(lines)); + + m_messageBox.setMessages(start, end); m_messageBox.enableArrows(m_position > lines, m_position < m_messages.size()); } }