php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #10458 Bugs #9257 and #10292 located and fixed - see diff
Submitted: 2001-04-23 10:58 UTC Modified: 2001-05-03 03:30 UTC
From: lawe at tdk dot dk Assigned:
Status: Closed Package: InterBase related
PHP Version: 4.0.4pl1 OS: All
Private report: No CVE-ID: None
 [2001-04-23 10:58 UTC] lawe at tdk dot dk
Hi!

See additional comments under #10292.

I have located and corrected the two bugs. Here is the diff between the new ./ext/interbase.c and the old one (version 1.48):

---------------
$diff interbase.c interbase.orig.c
1731d1730
<           val->value.str.val[len] = 0;
1736c1735
<               val->value.str.val = php_addslashes(val->value.str.val, len, &len, 1);
---
>               val->value.str.val = php_addslashes(val->value.str.val, len, &len, 0);
1754d1752
<
1784,1785c1782,1783
<           val->value.str.len = sprintf(string_data, "%Ld.%0*Ld",
<                                        (ISC_INT64) (*((ISC_INT64 *)data) / (int) pow(10.0, (double) -scale)), -scale,
---
>           val->value.str.len = sprintf(string_data, "%Ld.%Ld",
>                                        (ISC_INT64) (*((ISC_INT64 *)data) / (int) pow(10.0, (double) -scale)),
$
---------------

It would be very convenient, if a modified php_interbase.dll could be made available soon. The Linux and FreeBSD users can just make the corrections and compile again.

Ad #9257) The old code didn't cope with the scale parameter to adjust the width of the fractional part (zero-padded).


Yours sincerely,
Lars Westermann

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-05-03 03:30 UTC] sniper@php.net
Andi applied your patch.

--Jani

 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Nov 28 07:01:29 2024 UTC