Open GoogleCodeExporter opened 9 years ago
[deleted comment]
[deleted comment]
Apparently, this bug comes down to the different values of PHP_INT_MAX on my
machines.
In the constructor of Abs/Frame.php the $header of the linked mp3 file is
4294661184 or 0xfffb5440. On the Windows machine (64 bit as well), PHP_INT_MAX
is 2147483647 which is smaller than the $header. On the Linux machine,
PHP_INT_MAX is 9223372036854775807.
Now comes the interesting part. The function return value of
Zend_Bit_Twiddling::getValue($header, 21, 32)
is -1 or 0xffffffff on Windows, but 2047 or 0x7ff on Linux. Thus, checking
against 0xffe via testAllBits fails on Linux and throws the exception 'Invalid
frame sync'.
Check out stackoverflow.com for more information, where I found a related
question:
http://stackoverflow.com/questions/11402469/bitwise-operations-on-big-integers-i
n-php-5-2-and-php-5-3
Original comment by ideb...@googlemail.com
on 19 Aug 2012 at 6:07
Original comment by svollbehr
on 21 Aug 2012 at 5:42
Original issue reported on code.google.com by
ideb...@googlemail.com
on 19 Aug 2012 at 12:17