Re: Bug in interbase.c "invalid BLOB ID"
| From: | Lukas Kahwe Smith | Date: | Fri, 28 Nov 2008 10:33:45 +0000 |
| Subject: | Re: Bug in interbase.c "invalid BLOB ID" | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-42067@lists.php.net to get a copy of this message | ||
On 28.11.2008, at 06:15, Benjamin Schwarze wrote:
Hi! As some other users recognized, there is a bug in the implementation of the function "_php_ibase_quad_to_string". (imho since version 5.2.1) The line "spprintf(&result, BLOB_ID_LEN+1, "0x%0*" LL_MASK "x", 16, *(ISC_UINT64*)(void *) &qd);" doesnt work as estimated. The result stored inside qd isnt the value convertet from the string, but something else. Normally this should work, but it doesnt. One possible solution is, to change the line into "spprintf(&result, BLOB_ID_LEN+1, "0x%0*x%0*x", 8, qd.gds_quad_low, 8, qd.gds_quad_high);" Of course, there might be a smarter way, but this solution worked for me. My system is a Fedora Core 8 64bit.is there a bug opened for this? if not please open one. also please add your patch regards, Lukas Kahwe Smith mls@pooteeweet.org