diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2019-06-07 16:39:22 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2019-06-07 16:48:56 -0700 |
commit | 8553af84db8b25918da8f5138dcc34601e3df47e (patch) | |
tree | 4e28cf36a5f89096464b4e7bbd1b8721ce323416 | |
parent | de46a6a4484750b96d6bf43c618029fa70db6080 (diff) | |
download | emacs-8553af84db8b25918da8f5138dcc34601e3df47e.tar.gz |
Fix minor ssize_t / ptrdiff_t confusion
* src/fileio.c (Fcopy_file): This limit is because of ssize_t,
so use TYPE_MAXIMUM (ssize_t) not PTRDIFF_MAX.
-rw-r--r-- | src/fileio.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/fileio.c b/src/fileio.c index f7376ce74fe..b141f568d70 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -2125,7 +2125,8 @@ permissions. */) /* Copy at most COPY_MAX bytes at a time; this is min (PTRDIFF_MAX, SIZE_MAX) truncated to a value that is surely aligned well. */ - ptrdiff_t copy_max = min (PTRDIFF_MAX, SIZE_MAX) >> 30 << 30; + ssize_t ssize_max = TYPE_MAXIMUM (ssize_t); + ptrdiff_t copy_max = min (ssize_max, SIZE_MAX) >> 30 << 30; off_t intail = insize - newsize; ptrdiff_t len = min (intail, copy_max); copied = copy_file_range (ifd, NULL, ofd, NULL, len, 0); |