From 8d8cba88681398d40004e97bcb93f7f8b88ae05e Mon Sep 17 00:00:00 2001 From: Tony Cook Date: Wed, 27 Jul 2011 21:32:37 +1000 Subject: [PATCH] [rt #84590] try to preserve the inode number, even if it's large This matches the checks done for other stat() fields. --- pp_sys.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pp_sys.c b/pp_sys.c index 726be76..a6949a9 100644 --- a/pp_sys.c +++ b/pp_sys.c @@ -2834,7 +2834,15 @@ PP(pp_stat) EXTEND(SP, max); EXTEND_MORTAL(max); mPUSHi(PL_statcache.st_dev); +#if ST_INO_SIZE > IVSIZE + mPUSHn(PL_statcache.st_ino); +#else +# if ST_INO_SIGN <= 0 mPUSHi(PL_statcache.st_ino); +# else + mPUSHu(PL_statcache.st_ino); +# endif +#endif mPUSHu(PL_statcache.st_mode); mPUSHu(PL_statcache.st_nlink); #if Uid_t_size > IVSIZE -- 2.7.4