summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/fhandler.cc
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2003-08-05 04:49:44 +0000
committerChristopher Faylor <me@cgf.cx>2003-08-05 04:49:44 +0000
commit4423d92489cd1a3bbcd1657bfbdef2d8a4cbf71f (patch)
tree8604d1089cf63e257c52156722c46f2497616f7d /winsup/cygwin/fhandler.cc
parent3fea2e408799e2a4539ddaf050331e877639a8aa (diff)
downloadcygnal-4423d92489cd1a3bbcd1657bfbdef2d8a4cbf71f.tar.gz
cygnal-4423d92489cd1a3bbcd1657bfbdef2d8a4cbf71f.tar.bz2
cygnal-4423d92489cd1a3bbcd1657bfbdef2d8a4cbf71f.zip
* path.cc (cygdrive_getmntent): Do not skip over drives of type
DRIVE_REMOVABLE. * fhandler.cc (fhandler_base::lseek): Be more paranoid when constructing offsets from 64 bit value. * syscalls.cc (logout): Avoid temp buffer memcpy since new scheme does not require it. (utmp_data): Rework as a macro which returns a pointer into a buffer. (getutent): Use new buffer allocation mechanism to grab a utmp buffer. (getutid): Ditto. (pututline): Ditto.
Diffstat (limited to 'winsup/cygwin/fhandler.cc')
-rw-r--r--winsup/cygwin/fhandler.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/winsup/cygwin/fhandler.cc b/winsup/cygwin/fhandler.cc
index ef0328d44..05dfa79ec 100644
--- a/winsup/cygwin/fhandler.cc
+++ b/winsup/cygwin/fhandler.cc
@@ -891,13 +891,13 @@ fhandler_base::lseek (_off64_t offset, int whence)
DWORD win32_whence = whence == SEEK_SET ? FILE_BEGIN
: (whence == SEEK_CUR ? FILE_CURRENT : FILE_END);
- LONG off_low = offset & 0xffffffff;
+ LONG off_low = ((__uint64_t) offset) & 0xffffffffLL;
LONG *poff_high, off_high;
if (!wincap.has_64bit_file_access ())
poff_high = NULL;
else
{
- off_high = offset >> 32;
+ off_high = ((__uint64_t) offset) >> 32LL;
poff_high = &off_high;
}