Bug 138250

Summary: printf %f has an extranious NULL emited for negative numbers
Product: Red Hat Enterprise Linux 3 Reporter: Anthony Rumble <ox23fgu02>
Component: phpAssignee: Joe Orton <jorton>
Status: CLOSED ERRATA QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.0   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
URL: http://bugs.php.net/?id=30764
Whiteboard:
Fixed In Version: 4.3.2-19.ent Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-01-05 16:24:28 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Anthony Rumble 2004-11-06 07:00:46 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5)
Gecko/20041103 Firefox/1.0RC2

Description of problem:
When using %f with printf/sprintf etc on negative numbers,
it is emitting a NULL at the end for some reason.

eg

printf("'%0.2f'\n", -10.45);

results in

'-10.45^@'

(^@ being the NULL)

Positive numbers are fine.

It's not in php 4.2.2, or php 4.3.9

Wouldn't normally be an issue, as I would just run a later php.. but
customer is running Enterprise, and wants to stick to "standard" RHEL
issued rpm's for "support".

Yukky work arounds ensue.

Version-Release number of selected component (if applicable):
php-4.3.2-14.ent

How reproducible:
Always

Steps to Reproduce:
1. see description
2.
3.
    

Additional info:

Comment 1 Joe Orton 2004-11-12 13:21:01 UTC
Thanks for the report.

Comment 3 Joe Orton 2004-12-17 16:38:05 UTC
Updated packages which include the fix this issue are now available
for download, *for test purposes only* from the URL:
http://people.redhat.com/jorton/Taroon-php/:

The following changes are included in these packages:

- add security fixes from upstream (#141132, #142056):
 * various unserializer fixes; updated to 4.3.10 code (CAN-2004-1019)
 * add fix for exif buffer overflow (CAN-2004-1065)
- shmop_write bounds checking and pack/unpack integer overflows
 (assigned CAN-2004-1018; only impact for malicious scripts)
- fix trailing NUL from printf in some cases (#138250)
- BuildRequire libtool (#137720)


Comment 4 Joe Orton 2005-01-05 16:24:28 UTC
The fix for this bug was included in the following erratum:

http://rhn.redhat.com/errata/RHSA-2004-687.html