From: Paul Eggert Date: Fri, 7 Jun 2019 23:39:22 +0000 (-0700) Subject: Fix minor ssize_t / ptrdiff_t confusion X-Git-Tag: emacs-27.0.90~2666 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=8553af84db8b25918da8f5138dcc34601e3df47e;p=emacs.git 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. --- 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);