diff --git a/src/gui/Window.cc b/src/gui/Window.cc index 330beef..a7fef76 100644 --- a/src/gui/Window.cc +++ b/src/gui/Window.cc @@ -223,7 +223,8 @@ void Window::handle_event(SDL_Event & event) void Window::scroll_down() { - if (m_start_piece->next != m_buffer->piece_table->end_descriptor) + if ((m_start_piece != m_buffer->piece_table->end_descriptor) && + (m_start_piece->next != m_buffer->piece_table->end_descriptor)) { m_start_piece = m_start_piece->next; redraw(); @@ -232,7 +233,8 @@ void Window::scroll_down() void Window::scroll_up() { - if (m_start_piece->prev != m_buffer->piece_table->start_descriptor) + if ((m_start_piece != m_buffer->piece_table->start_descriptor) && + (m_start_piece->prev != m_buffer->piece_table->start_descriptor)) { m_start_piece = m_start_piece->prev; redraw();