Hi,

  I was a bit disappointed to see that filesize, stat et al don't work on
32bits systems, because they are using 32 bits integer.
I've found a patch written by Wes, but unfortunately it didn't worked.

Well, now, I've found this:

http://bugs.php.net/bug.php?id=48886

This is done right, it works for all streams, not just file.
I think it just the best solution now without breaking the ABI with modules.
With this patch you get 52 bits filesize (which is more than enough with a
32 bits system), 52 bits offset, and so on.

With unmodified PHP code, it's working because the type is used as a double
when it overcome the 32 bit limit.
So instead of this ugly fix : "sprintf("%u", $value)" for 2GB up to 4GB, you
have this one "sprintf("%.0f", $value)", which works with file size < 4503TB
on 32 bits machines.

Please advise.

Reply via email to