diff options
author | Phil Lobbes <phil@perkpartners.com> | 1999-08-09 14:38:54 -0700 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 1999-08-10 07:43:03 +0000 |
commit | 1ff81528d9b685c68d4fe91564f636f46d635496 (patch) | |
tree | b5a8e336520db5c8f229f409a6dbe28ab3b449f5 /pp_sys.c | |
parent | 9112abd4c7cab282eaedd0733624fcb0136fb606 (diff) | |
download | perl-1ff81528d9b685c68d4fe91564f636f46d635496.tar.gz |
Remove I32 casts from pp_stat, these make stat()
very broken e.g. on files larger than 2 gigabytes.
Reported by
To: perl5-porters@perl.org
Subject: [ID 19990810.001] Possible bug using stat w/large files Digital
UNIX Perl 5.005_03
Message-Id: <199908100438.VAA08292@ultra.finchcomputer.com>
There are more of these I32 casts all over pp_sys.c,
all of them should be checked.
p4raw-id: //depot/cfgperl@3944
Diffstat (limited to 'pp_sys.c')
-rw-r--r-- | pp_sys.c | 26 |
1 files changed, 13 insertions, 13 deletions
@@ -2472,30 +2472,30 @@ PP(pp_stat) if (max) { EXTEND(SP, max); EXTEND_MORTAL(max); - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_dev))); - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_ino))); - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_mode))); - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_nlink))); - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_uid))); - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_gid))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_dev))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_ino))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_mode))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_nlink))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_uid))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_gid))); #ifdef USE_STAT_RDEV - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_rdev))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_rdev))); #else PUSHs(sv_2mortal(newSVpvn("", 0))); #endif - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_size))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_size))); #ifdef BIG_TIME PUSHs(sv_2mortal(newSVnv((U32)PL_statcache.st_atime))); PUSHs(sv_2mortal(newSVnv((U32)PL_statcache.st_mtime))); PUSHs(sv_2mortal(newSVnv((U32)PL_statcache.st_ctime))); #else - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_atime))); - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_mtime))); - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_ctime))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_atime))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_mtime))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_ctime))); #endif #ifdef USE_STAT_BLOCKS - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_blksize))); - PUSHs(sv_2mortal(newSViv((I32)PL_statcache.st_blocks))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_blksize))); + PUSHs(sv_2mortal(newSViv(PL_statcache.st_blocks))); #else PUSHs(sv_2mortal(newSVpvn("", 0))); PUSHs(sv_2mortal(newSVpvn("", 0))); |