From: Bram Moolenaar Date: Sat, 12 Feb 2022 21:16:21 +0000 (+0000) Subject: patch 8.2.4363: MS-Windows: running out of memory for a very long line X-Git-Tag: v8.2.4363 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8e38555ece7d3fe1edc6681ec70fe5586a524862;p=thirdparty%2Fvim.git patch 8.2.4363: MS-Windows: running out of memory for a very long line Problem: MS-Windows: running out of memory for a very long line. Solution: Use a 32 bit value for MAXCOL also when ints are 64 bits. --- diff --git a/src/version.c b/src/version.c index 1fc176779d..18f7892f18 100644 --- a/src/version.c +++ b/src/version.c @@ -750,6 +750,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 4363, /**/ 4362, /**/ diff --git a/src/vim.h b/src/vim.h index 3fea0d9684..09303e98c3 100644 --- a/src/vim.h +++ b/src/vim.h @@ -1739,7 +1739,9 @@ typedef unsigned short disptick_T; // display tick type # define MAXCOL (0x3fffffffL) // maximum column number, 30 bits # define MAXLNUM (0x3fffffffL) // maximum (invalid) line number #else -# define MAXCOL INT_MAX // maximum column number + // MAXCOL used to be INT_MAX, but with 64 bit ints that results in running + // out of memory when trying to allocate a very long line. +# define MAXCOL 0x7fffffffL // maximum column number # define MAXLNUM LONG_MAX // maximum (invalid) line number #endif