Re: [Fwd: [PHP-CVS] cvs: php-src /ext/standard formatted_print.c]
| From: | Gregory Beaver | Date: | Fri, 17 Aug 2007 18:57:06 +0000 |
| Subject: | Re: [Fwd: [PHP-CVS] cvs: php-src /ext/standard formatted_print.c] | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-31710@lists.php.net to get a copy of this message | ||
Antony Dovgal wrote:
>
> Ilia? Greg?
> Any comments?
>
> On 14.08.2007 15:42, Antony Dovgal wrote:
>> This patch breaks PEAR phar install on 64bit.
>>> From what I can see in the source code, it compares data in the phar
>>> with
>> the result of sprintf("%u"..), which is different on 32bit and 64bit
>> because of this patch.
>>
>> Either phar should be changed to detect this situation or this patch
>> should be reverted.
Hi,
My only comment is I've already been forced to change a fully working
PHP_Archive 3 times because of bugfixes that broke BC in pack/unpack,
and I changed it to sprintf("%u") because it was the only way to ensure
that the behavior works the same way on 32-bit and 64-bit.
I would appreciate it if this is the last change of this nature that I
need to deal with :).
As for PHP_Archive, I'll try to figure out a solution but to be honest,
I'm not too keen on this, as sprintf("%u") was the only solution I found
last time. Perhaps dropping unpack() and rewriting it in userspace is
my only option <shiver>.
Thanks,
Greg
P.S. just to be clear, this is PHP_Archive we're talking about, not
phar. phar is a PHP extension that has no such problems as it does all
the unpacking internally, PHP_Archive is a userspace stream wrapper that
uses unpack()/sprintf("%u")