Bug #60052 [Opn->Asn]: Integer returned as a 64bit integer on X64_86

From: Date: Wed, 16 Nov 2011 00:36:13 +0000
Subject: Bug #60052 [Opn->Asn]: Integer returned as a 64bit integer on X64_86
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-165205@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=60052&edit=1 ID: 60052 Updated by: felipe@php.net Reported by: m dot vanduren at jonker dot nl Summary: Integer returned as a 64bit integer on X64_86 -Status: Open +Status: Assigned Type: Bug Package: InterBase related Operating System: All (linux tested) PHP Version: 5.3.8 -Assigned To: +Assigned To: felipe Block user comment: N Private report: N Previous Comments: ------------------------------------------------------------------------ [2011-10-13 13:01:36] m dot vanduren at jonker dot nl Description: ------------ Integer on firebird is treated as a 32 bit int and int64 is used as a 64 bit integer. In the pdo_firebird driver INT64 is not implemented and LONG (int32) is treated as a long integer. On an x86_64 machine this means that a SQL_LONG doesn't honor the bit-sign in a value and INT64 doesn't return anything. This patch should fix this value for x86_64 systems while leaving x86 systems unchanged. Test script: --------------- any firebirdSQL database with a integer field containing a negative value. retrieve the value with the pdo_firebird driver on a 64 bit machine and echo it to the screen. Expected result: ---------------- negative values with integer and should be returned as a negative number. Actual result: -------------- negative values are returned as their unsigned counterpart. ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=60052&edit=1

« previous php.bugs (#165205) next »