• Luis Javier Merino's avatar
    Fix crash on resize while doing other things · 0ecc366c
    Luis Javier Merino authored
    Commits 9ffe33a2 and
    4352df00 introduce and use a
    getScreenLineColumns(line) method to provide support for DECDWL
    (Double-Width) lines.
    
    It turns out that under some conditions on resize Screen::_cuY (the
    current cursor Y position) and ScreenWindow::endWindowLine() can have
    different ideas of how many lines the terminal has.
    
    A test that asserts:
    
     - while [ true ]; do echo -e "\e[?1047h";  done
     - Resize the window, making it smaller
    
    BUG: 436327
    0ecc366c
Screen.cpp 47.1 KB