summaryrefslogtreecommitdiff
path: root/src/sysdep.c
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2011-04-10 23:43:08 +0300
committerEli Zaretskii <eliz@gnu.org>2011-04-10 23:43:08 +0300
commit8a2cbd723c0b453b70dc1fcefe5b489f58605258 (patch)
treea1268c68ffe5a72329d60fcf6280485f8ba2327e /src/sysdep.c
parent1ebfdcb6eff7ebe4cf5ef3426944513a2ecdfacf (diff)
downloademacs-8a2cbd723c0b453b70dc1fcefe5b489f58605258.tar.gz
Fix write-region and its subroutines for buffers > 2GB.
src/fileio.c (a_write, e_write): Modify declaration of arguments and local variables to support buffers larger than 2GB. (Fcopy_file): Use EMACS_INT for return value of emacs_read. src/sysdep.c (emacs_write, emacs_read): Use ssize_t for last argument, local variables, and return value. src/lisp.h: Update prototypes of emacs_write and emacs_read. src/sound.c (vox_write): Use ssize_t for return value of emacs_write.
Diffstat (limited to 'src/sysdep.c')
-rw-r--r--src/sysdep.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/sysdep.c b/src/sysdep.c
index f4f767dac3f..37c9f73dba9 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -1825,10 +1825,10 @@ emacs_close (int fd)
return rtnval;
}
-int
-emacs_read (int fildes, char *buf, unsigned int nbyte)
+ssize_t
+emacs_read (int fildes, char *buf, ssize_t nbyte)
{
- register int rtnval;
+ register ssize_t rtnval;
while ((rtnval = read (fildes, buf, nbyte)) == -1
&& (errno == EINTR))
@@ -1836,10 +1836,10 @@ emacs_read (int fildes, char *buf, unsigned int nbyte)
return (rtnval);
}
-int
-emacs_write (int fildes, const char *buf, unsigned int nbyte)
+ssize_t
+emacs_write (int fildes, const char *buf, ssize_t nbyte)
{
- register int rtnval, bytes_written;
+ register ssize_t rtnval, bytes_written;
bytes_written = 0;