diff options
author | Bram Moolenaar <Bram@vim.org> | 2019-02-19 21:24:54 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2019-02-19 21:24:54 +0100 |
commit | c9629251a634d4f5988c8162ba8249026d1af687 (patch) | |
tree | e430508ca7cb3c771a50a610c618a58b1032db75 | |
parent | bbd854dc57e82937eb7b95af220a2f137ded64f8 (diff) | |
download | vim-git-c9629251a634d4f5988c8162ba8249026d1af687.tar.gz |
patch 8.1.0953: a very long file is truncated at 2^31 linesv8.1.0953
Problem: A very long file is truncated at 2^31 lines.
Solution: Use LONG_MAX for MAXLNUM. (Dominique Pelle, closes #4011)
-rw-r--r-- | src/version.c | 2 | ||||
-rw-r--r-- | src/vim.h | 20 |
2 files changed, 12 insertions, 10 deletions
diff --git a/src/version.c b/src/version.c index 16ab49391..a266ce08f 100644 --- a/src/version.c +++ b/src/version.c @@ -780,6 +780,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 953, +/**/ 952, /**/ 951, @@ -54,6 +54,9 @@ Error: configure did not run properly. Check auto/config.log. # endif +// for INT_MAX, LONG_MAX et al. +#include <limits.h> + /* * Cygwin may have fchdir() in a newer release, but in most versions it * doesn't work well and avoiding it keeps the binary backward compatible. @@ -455,9 +458,6 @@ typedef unsigned int u8char_T; // int is 32 bits or more # include <errno.h> #endif -/* for INT_MAX et al. */ -#include <limits.h> - /* * Allow other (non-unix) systems to configure themselves now * These are also in os_unix.h, because osdef.sh needs them there. @@ -1666,17 +1666,17 @@ typedef unsigned short disptick_T; /* display tick type */ * not a real problem. BTW: Longer lines are split. */ #ifdef __MVS__ -# define MAXCOL (0x3fffffffL) /* maximum column number, 30 bits */ -# define MAXLNUM (0x3fffffffL) /* maximum (invalid) line number */ +# define MAXCOL (0x3fffffffL) // maximum column number, 30 bits +# define MAXLNUM (0x3fffffffL) // maximum (invalid) line number #else -# define MAXCOL (0x7fffffffL) /* maximum column number, 31 bits */ -# define MAXLNUM (0x7fffffffL) /* maximum (invalid) line number */ +# define MAXCOL INT_MAX // maximum column number +# define MAXLNUM LONG_MAX // maximum (invalid) line number #endif -#define SHOWCMD_COLS 10 /* columns needed by shown command */ -#define STL_MAX_ITEM 80 /* max nr of %<flag> in statusline */ +#define SHOWCMD_COLS 10 // columns needed by shown command +#define STL_MAX_ITEM 80 // max nr of %<flag> in statusline -typedef void *vim_acl_T; /* dummy to pass an ACL to a function */ +typedef void *vim_acl_T; // dummy to pass an ACL to a function #ifndef mch_memmove # define mch_memmove(to, from, len) memmove((char*)(to), (char*)(from), (size_t)(len)) |