Perl-Toolchain-Gang / ExtUtils-MakeMaker

Perl module to make Makefiles and build modules (what backs Makefile.PL)
https://metacpan.org/release/ExtUtils-MakeMaker
64 stars 77 forks source link

comparing inodes numerically is unsafe #395

Closed tonycoz closed 3 years ago

tonycoz commented 3 years ago

On a 32-bit system with 64-bit inodes, recent-ish versions of perl will return very large inode numbers as strings, and their numeric value may be too large to be exactly represented as an NV.

This means comparing such inodes numerically may return them as equal even when the actual inode number is different.

See https://github.com/Perl/perl5/pull/18788 for a case where this has caused a problem.

rokuyama commented 3 years ago

Hi,

I think lib/File/Copy.pm should be fixed also: https://gist.github.com/rokuyama/f8949a8bc552cb7c7b9d797c4ebb575a

Thanks, rin

tonycoz commented 3 years ago

I think lib/File/Copy.pm should be fixed also:

Fixed in 76d2194af (on perl/perl5)

rokuyama commented 3 years ago

Thank you for your quick response!