screen: fix problem with p_ch

When the screen is resized, p_ch is not re-set to the appropriate value.
As a result, access to invalid addresses was occurring.
This commit is contained in:
erw7
2021-04-01 20:46:12 +09:00
parent a177820420
commit 581b2bcde0
2 changed files with 16 additions and 0 deletions

View File

@@ -7507,6 +7507,10 @@ void screen_resize(int width, int height)
Rows = height;
Columns = width;
check_shellsize();
int max_p_ch = Rows - min_rows() + 1;
if (!ui_has(kUIMessages) && p_ch > max_p_ch) {
p_ch = max_p_ch ? max_p_ch : 1;
}
height = Rows;
width = Columns;
p_lines = Rows;