patch 8.1.2424: MS-Windows: console buffer is resized unnecessarily
Problem: MS-Windows: console buffer is resized unnecessarily.
Solution: Only call ResizeConBuf() when the size differs. (Nobuhiro
Takasaki, closes #5343)
diff --git a/src/os_win32.c b/src/os_win32.c
index b56033c..c5670af 100644
--- a/src/os_win32.c
+++ b/src/os_win32.c
@@ -1641,15 +1641,19 @@
{
COORD dwSize = ir.Event.WindowBufferSizeEvent.dwSize;
- // Only call shell_resized() when the size actually change to
+ // Only call shell_resized() when the size actually changed to
// avoid the screen is cleared.
if (dwSize.X != Columns || dwSize.Y != Rows)
{
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo(g_hConOut, &csbi);
+ dwSize.X = csbi.srWindow.Right - csbi.srWindow.Left + 1;
dwSize.Y = csbi.srWindow.Bottom - csbi.srWindow.Top + 1;
- ResizeConBuf(g_hConOut, dwSize);
- shell_resized();
+ if (dwSize.X != Columns || dwSize.Y != Rows)
+ {
+ ResizeConBuf(g_hConOut, dwSize);
+ shell_resized();
+ }
}
}
else if (ir.EventType == MOUSE_EVENT
diff --git a/src/version.c b/src/version.c
index 97e3030..44020c1 100644
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2424,
+/**/
2423,
/**/
2422,