#43717 [Com]: __construct() could be called after calling __set() by PDO
ID: 43717 Comment by: crocodile2u at yandex dot ru Reported By: tohru at nakarika dot com Status: Open Bug Type: PDO related Operating System: FreeBSD 6.1-RELEASE-p10 PHP Version: 5.2.5 New Comment: I'm experiencing the same problem with yesterday (2008-03-31) snapshot of php-5.3 and Kubuntu linux 7.10. By now, I have to workaround this by doing some additional checks, but I am quite sure that this behavior is more like a bug than a feature. Previous Comments: [2007-12-31 09:22:22] tohru at nakarika dot com Description: when you call PDOStatement::fetch() with the fetch mode PDO::FETCH_CLASS PDO will create FooClass' instance. And in the creation process PDO (or script engine?) calls __set() method before calling FooClass' __construct(). Reproduce code: --- class FooClass { public function __construct($param) { echo "FooClass::constructor\n"; } protected function &__set($name, $value) { echo "FooClass::__set()\n"; } } $pdo = new PDO($dsn, ...); $stmt = $pdo->prepare('SELECT * FROM ...'); $stmt->setFetchMode(PDO::FETCH_CLASS, FooClass, array('bar')); $fooInst = $stmt->fetch(); Expected result: The script should output strings in the following order: 1. FooClass::constructor 2. FooClass::__set() Actual result: -- 1. FooClass::__set() 2. FooClass::constructor -- Edit this bug report at http://bugs.php.net/?id=43717&edit=1
#44589 [Opn]: pdo_oci crashes and aborts php script for LOB columns
ID: 44589 User updated by: s dot rost at ewerk dot com Reported By: s dot rost at ewerk dot com Status: Open Bug Type: PDO related Operating System: Debian 2.6.18.dfsg.1-18etch1 PHP Version: 5.2.5 New Comment: php -i | grep configure Configure Command => './configure' '--prefix=/opt/server_apps/php' '--with-apxs2=/opt/server_apps/httpd/bin/apxs' '--disable-cgi' '-- with-config-file-path=/etc' '--enable-magic-quotes' '--with- curl=shared' '--with-jpeg-dir=/usr' '--with-freetype-dir=/usr' '-- with-openssl=shared' '--with-gd=shared' '--with-iconv=shared' '--with- ldap=shared' '--enable-mbstring=shared' '--with- mysql=/opt/server_apps/mysql' '--with-mysql- sock=/var/lib/mysqld/mysqld.sock' '--with- mysqli=/opt/server_apps/mysql/bin/mysql_config' '--with-pear' '--with- snmp=shared' '--enable-sockets' '--with-zlib' '--with-mime-magic' '-- with-pspell' '--with-xsl' '--with-mcrypt' '--with-mhash' '--enable- soap' '--with-oci8=instantclient,/opt/oracle/instantclient' '--enable- sigchild' '--with-pdo-mysql=/opt/server_apps/mysql' '--with-pdo- oci=instantclient,/opt/oracle/instantclient,11.1' Previous Comments: [2008-04-01 11:20:29] s dot rost at ewerk dot com Description: When fetching rows from a table containing LOB columns more than once (!) pdo_oci or the oracle instantclient crashes, resets the server connection and aborts the PHP script. It seems like when the fetched row gets out of scope and should be garbage collected the error occurs. Reproduce code: --- See http://public.serenity.de/pdo_oci_test.txt Replace XXX, YYY and scott/tiger with valid connection data and the script will do the rest. Expected result: 864 864 864 864 this line is never reached Actual result: -- 864 864 Aborted -- Edit this bug report at http://bugs.php.net/?id=44589&edit=1
#44589 [Opn->Fbk]: pdo_oci crashes and aborts php script for LOB columns
ID: 44589 Updated by: [EMAIL PROTECTED] Reported By: s dot rost at ewerk dot com -Status: Open +Status: Feedback Bug Type: PDO related Operating System: Debian 2.6.18.dfsg.1-18etch1 PHP Version: 5.2.5 New Comment: Thank you for this bug report. To properly diagnose the problem, we need a backtrace to see what is happening behind the scenes. To find out how to generate a backtrace, please read http://bugs.php.net/bugs-generating-backtrace.php for *NIX and http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32 Once you have generated a backtrace, please submit it to this bug report and change the status back to "Open". Thank you for helping us make PHP better. Previous Comments: [2008-04-01 11:22:40] s dot rost at ewerk dot com php -i | grep configure Configure Command => './configure' '--prefix=/opt/server_apps/php' '--with-apxs2=/opt/server_apps/httpd/bin/apxs' '--disable-cgi' '-- with-config-file-path=/etc' '--enable-magic-quotes' '--with- curl=shared' '--with-jpeg-dir=/usr' '--with-freetype-dir=/usr' '-- with-openssl=shared' '--with-gd=shared' '--with-iconv=shared' '--with- ldap=shared' '--enable-mbstring=shared' '--with- mysql=/opt/server_apps/mysql' '--with-mysql- sock=/var/lib/mysqld/mysqld.sock' '--with- mysqli=/opt/server_apps/mysql/bin/mysql_config' '--with-pear' '--with- snmp=shared' '--enable-sockets' '--with-zlib' '--with-mime-magic' '-- with-pspell' '--with-xsl' '--with-mcrypt' '--with-mhash' '--enable- soap' '--with-oci8=instantclient,/opt/oracle/instantclient' '--enable- sigchild' '--with-pdo-mysql=/opt/server_apps/mysql' '--with-pdo- oci=instantclient,/opt/oracle/instantclient,11.1' [2008-04-01 11:20:29] s dot rost at ewerk dot com Description: When fetching rows from a table containing LOB columns more than once (!) pdo_oci or the oracle instantclient crashes, resets the server connection and aborts the PHP script. It seems like when the fetched row gets out of scope and should be garbage collected the error occurs. Reproduce code: --- See http://public.serenity.de/pdo_oci_test.txt Replace XXX, YYY and scott/tiger with valid connection data and the script will do the rest. Expected result: 864 864 864 864 this line is never reached Actual result: -- 864 864 Aborted -- Edit this bug report at http://bugs.php.net/?id=44589&edit=1
#44587 [NEW]: Problems whene asking if a key of an array isset, and the variable is not array
From: francesco at facconi dot eu Operating system: Linux 2.6.18-6-686 PHP version: 5.2.5 PHP Bug Type: Arrays related Bug description: Problems whene asking if a key of an array isset, and the variable is not array Description: I was evaluating a variable with isset. I don't know what kind of variable it is before evaluating. If I do a isset of a key of an array, and the variable is NOT an array, I receive a true response. I think this is not a good result. Reproduce code: --- function verify($var) { if (isset($var['key'])) { echo "OK"; } else { echo "NO"; } return; } verify ('asdfghjkl'); verify (array('key'=>'1', 'option'=>'2'); verify (array('action'=>'1', 'option'=>'2'); Expected result: ## verify ('asdfghjkl'); NO ## verify (array('key'=>'1', 'option'=>'2'); OK ## verify (array('action'=>'1', 'option'=>'2'); NO Actual result: -- ## verify ('asdfghjkl'); OK ## verify (array('key'=>'1', 'option'=>'2'); OK ## verify (array('action'=>'1', 'option'=>'2'); NO -- Edit bug report at http://bugs.php.net/?id=44587&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44587&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44587&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44587&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44587&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44587&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44587&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44587&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44587&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44587&r=support Expected behavior:http://bugs.php.net/fix.php?id=44587&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44587&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44587&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44587&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44587&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44587&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44587&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44587&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44587&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44587&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44587&r=mysqlcfg
#44588 [NEW]: Problem with module php_imagick.dll
From: amudhanst at gmail dot com Operating system: Window XP PHP version: 5.2.5 PHP Bug Type: Dynamic loading Bug description: Problem with module php_imagick.dll Description: I have configured Apache2.2, PHP5.2.5(Windows Installer). In the installer I didn't find php_imagick.dll which is the extension for ImageMagick. I downloaded from the PECL extensions in php.net site. There I found the file and copied to the php/ext folder and configured the php.ini file to enable this extension. But it says the following error PHP Startup: Unable to load dynamic library 'D:\PHP\ext\php_imagick.dll' - The specified module could not be found. Reproduce code: --- This is the configuration I am having for extensions in my php.ini ; Directory in which the loadable extensions (modules) reside. extension_dir ="D:\PHP\ext" ;; ; Dynamic Extensions ; ;; ;extension=php_xsl.dll ;extension=php_zip.dll extension=php_imagick.dll Expected result: The extension cannot be loaded. and says the following error PHP Startup: Unable to load dynamic library 'D:\PHP\ext\php_imagick.dll' - The specified module could not be found. -- Edit bug report at http://bugs.php.net/?id=44588&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44588&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44588&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44588&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44588&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44588&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44588&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44588&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44588&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44588&r=support Expected behavior:http://bugs.php.net/fix.php?id=44588&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44588&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44588&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44588&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44588&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44588&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44588&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44588&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44588&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44588&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44588&r=mysqlcfg
#44589 [NEW]: pdo_oci crashes and aborts php script for LOB columns
From: s dot rost at ewerk dot com Operating system: Debian 2.6.18.dfsg.1-18etch1 PHP version: 5.2.5 PHP Bug Type: PDO related Bug description: pdo_oci crashes and aborts php script for LOB columns Description: When fetching rows from a table containing LOB columns more than once (!) pdo_oci or the oracle instantclient crashes, resets the server connection and aborts the PHP script. It seems like when the fetched row gets out of scope and should be garbage collected the error occurs. Reproduce code: --- See http://public.serenity.de/pdo_oci_test.txt Replace XXX, YYY and scott/tiger with valid connection data and the script will do the rest. Expected result: 864 864 864 864 this line is never reached Actual result: -- 864 864 Aborted -- Edit bug report at http://bugs.php.net/?id=44589&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44589&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44589&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44589&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44589&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44589&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44589&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44589&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44589&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44589&r=support Expected behavior:http://bugs.php.net/fix.php?id=44589&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44589&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44589&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44589&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44589&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44589&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44589&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44589&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44589&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44589&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44589&r=mysqlcfg
#44590 [NEW]: strange behavior of visibility
From: vituko at gmail dot com Operating system: Debian GNU/Linux PHP version: 5.3CVS-2008-04-01 (CVS) PHP Bug Type: Class/Object related Bug description: strange behavior of visibility Description: Context visibility of inherited private attributes when they apply to child classes. When a private attribtue is inherited, it's still accessible from the context (base class) where it was declared and it becomes accessible from the child context (unidirectional visibility). But when this attribute is static (class attribute), it becomes inaccessible from every context : the base class and the child class. I don't know if it's the normal behavior, anyway I find it strange and it could be documented. Thanks Reproduce code: --- class a { private $v ; private static $w ; function f($c) { $c -> v = 'asdf' ; $c :: $w = 'fdsa' ; } } class b extends a { function g($c) { $c -> v = 'asdf' ; $c :: $w = 'fdsa' ; } } $a = new a() ; $b = new b() ; $a-> f($a) ; $a-> f($b) ; $b -> f($b) ; $b -> g($b) ; Expected result: no errors Actual result: -- A - protected static $w ; all is ok B - private static $w ; 1 : $a-> f($a) ; -> ok 2 : $a-> f($b) ; -> Cannot access property b::$w 3 : $b -> f($b) ; -> Cannot access property b::$w 4 : $b -> g($b) ; -> Cannot access property b::$w 2,3,4 : b:$w is accessible from nowhere. The errors are not : - Access to undeclared static property - Cannot access private property -- Edit bug report at http://bugs.php.net/?id=44590&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44590&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44590&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44590&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44590&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44590&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44590&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44590&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44590&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44590&r=support Expected behavior:http://bugs.php.net/fix.php?id=44590&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44590&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44590&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44590&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44590&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44590&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44590&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44590&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44590&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44590&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44590&r=mysqlcfg
#44589 [Fbk->Opn]: pdo_oci crashes and aborts php script for LOB columns
ID: 44589 User updated by: s dot rost at ewerk dot com Reported By: s dot rost at ewerk dot com -Status: Feedback +Status: Open Bug Type: PDO related Operating System: Debian 2.6.18.dfsg.1-18etch1 PHP Version: 5.2.5 New Comment: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1245628192 (LWP 13277)] 0xb79b3a5e in kghufree () from /opt/oracle/instantclient/libclntsh.so.11.1 (gdb) bt #0 0xb79b3a5e in kghufree () from /opt/oracle/instantclient/libclntsh.so.11.1 #1 0xb79a83a6 in kohfrem () from /opt/oracle/instantclient/libclntsh.so.11.1 #2 0xb79a7b3b in kohfrr () from /opt/oracle/instantclient/libclntsh.so.11.1 #3 0xb68dfe48 in kohfrw () from /opt/oracle/instantclient/libclntsh.so.11.1 #4 0xb685b010 in kollfrfn () from /opt/oracle/instantclient/libclntsh.so.11.1 #5 0xb63f5379 in kpufdesc2 () from /opt/oracle/instantclient/libclntsh.so.11.1 #6 0xb63f4bb1 in kpufdesc () from /opt/oracle/instantclient/libclntsh.so.11.1 #7 0xb63ce20e in OCIDescriptorFree () from /opt/oracle/instantclient/libclntsh.so.11.1 #8 0x08171a7e in oci_blob_close (stream=0xb5be08d0, close_handle=1) at /var/install/source/php-5.2.5/ext/pdo_oci/oci_statement.c:652 #9 0x0837cbdc in _php_stream_free (stream=0xb5be08d0, close_options=11) at /var/install/source/php-5.2.5/main/streams/streams.c:346 #10 0x0837ef17 in stream_resource_regular_dtor (rsrc=0xb5be06bc) at /var/install/source/php-5.2.5/main/streams/streams.c:1369 #11 0x083c85a0 in list_entry_destructor (ptr=0xb5be06bc) at /var/install/source/php-5.2.5/Zend/zend_list.c:184 #12 0x083c5d9a in zend_hash_del_key_or_index (ht=0x852c7e8, arKey=0x0, nKeyLength=0, h=11, flag=1) at /var/install/source/php-5.2.5/Zend/zend_hash.c:497 #13 0x083c825b in _zend_list_delete (id=11) at /var/install/source/php-5.2.5/Zend/zend_list.c:58 #14 0x083b7e54 in _zval_dtor_func (zvalue=0xb5be0858, __zend_filename=0x84f9ebc "/var/install/source/php- 5.2.5/Zend/zend_variables.h", __zend_lineno=35) at /var/install/source/php-5.2.5/Zend/zend_variables.c:60 #15 0x083aa842 in _zval_dtor (zvalue=0xb5be0858, __zend_filename=0x84f9e48 "/var/install/source/php- 5.2.5/Zend/zend_execute_API.c", __zend_lineno=414) at /var/install/source/php-5.2.5/Zend/zend_variables.h:35 #16 0x083aaa00 in _zval_ptr_dtor (zval_ptr=0xb5be09d8, __zend_filename=0x84faf94 "/var/install/source/php- 5.2.5/Zend/zend_variables.c", __zend_lineno=175) at /var/install/source/php-5.2.5/Zend/zend_execute_API.c:414 #17 0x083b81b4 in _zval_ptr_dtor_wrapper (zval_ptr=0xb5be09d8) at /var/install/source/php-5.2.5/Zend/zend_variables.c:175 #18 0x083c5ee5 in zend_hash_destroy (ht=0xb5be07b4) at /var/install/source/php-5.2.5/Zend/zend_hash.c:526 #19 0x083b7e05 in _zval_dtor_func (zvalue=0xb5be0680, __zend_filename=0x84fe2a8 "/var/install/source/php- 5.2.5/Zend/zend_variables.h", __zend_lineno=35) at /var/install/source/php-5.2.5/Zend/zend_variables.c:43 #20 0x083de15b in _zval_dtor (zvalue=0xb5be0680, __zend_filename=0x84fe274 "/var/install/source/php- 5.2.5/Zend/zend_execute.c", __zend_lineno=811) at /var/install/source/php-5.2.5/Zend/zend_variables.h:35 #21 0x083e2203 in zend_assign_to_variable (result=0xb5be2834, op1=0xb5be2848, op2=0xb5be285c, value=0xb5bde518, type=4, Ts=0xbf8a01d0) at /var/install/source/php- 5.2.5/Zend/zend_execute.c:811 ---Type to continue, or q to quit--- #22 0x0842abbe in ZEND_ASSIGN_SPEC_CV_VAR_HANDLER (execute_data=0xbf8a0554) at /var/install/source/php-5.2.5/Zend/zend_vm_execute.h:24176 #23 0x083dec8c in execute (op_array=0xb5bddea8) at /var/install/source/php-5.2.5/Zend/zend_vm_execute.h:92 #24 0x083ba1ab in zend_execute_scripts (type=8, retval=0x0, file_count=3) at /var/install/source/php-5.2.5/Zend/zend.c:1134 #25 0x083691b6 in php_execute_script (primary_file=0xbf8a28f0) at /var/install/source/php-5.2.5/main/main.c:2004 #26 0x08433966 in main (argc=2, argv=0xbf8a2a34) at /var/install/source/php-5.2.5/sapi/cli/php_cli.c:1140 Previous Comments: [2008-04-01 11:33:48] [EMAIL PROTECTED] Thank you for this bug report. To properly diagnose the problem, we need a backtrace to see what is happening behind the scenes. To find out how to generate a backtrace, please read http://bugs.php.net/bugs-generating-backtrace.php for *NIX and http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32 Once you have generated a backtrace, please submit it to this bug report and change the status back to "Open". Thank you for helping us make PHP better. [2008-04-01 11:22:40] s dot rost at ewerk dot com php -i | grep configure Configure Command => './configure' '--prefix=/opt/server_apps/php' '--with-apxs2=/opt/server_apps/httpd/bin/apxs' '--disable-cgi' '-- with-config-file-path=/etc' '--enable-mag
#44591 [NEW]: Debian Linux 2.6.18-5-686 #1 SMP Mon Dec 24 16:41:07 UTC 2007 i686 GNU/Linux
From: woeterman at gmail dot com Operating system: imagegif's filename parameter PHP version: 5.2CVS-2008-04-01 (CVS) PHP Bug Type: GD related Bug description: Debian Linux 2.6.18-5-686 #1 SMP Mon Dec 24 16:41:07 UTC 2007 i686 GNU/Linux Description: The documentation says: 'The path to save the file to. If not set or NULL, the raw image stream will be outputted directly.' But when using null, the image is not saved to a file, but not displayed on the screen either. Reproduce code: --- Expected result: First line to save the file to 'test.jpg', which works. The last 2 lines to display the image on the screen, but only the last one does. Actual result: -- First line saves the file, middle line seems to do nothing, and the last line displays the image on the screen. -- Edit bug report at http://bugs.php.net/?id=44591&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44591&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44591&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44591&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44591&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44591&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44591&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44591&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44591&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44591&r=support Expected behavior:http://bugs.php.net/fix.php?id=44591&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44591&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44591&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44591&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44591&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44591&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44591&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44591&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44591&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44591&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44591&r=mysqlcfg
#44589 [Opn]: pdo_oci crashes and aborts php script for LOB columns
ID: 44589 User updated by: s dot rost at ewerk dot com Reported By: s dot rost at ewerk dot com Status: Open Bug Type: PDO related Operating System: Debian 2.6.18.dfsg.1-18etch1 PHP Version: 5.2.5 New Comment: FYI Compiling PHP against different versions of oracle instantclient does not improve the matter but leads to more errors. We have tried instantclient 10.1 and 10.2 as well. Previous Comments: [2008-04-01 12:32:41] s dot rost at ewerk dot com Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1245628192 (LWP 13277)] 0xb79b3a5e in kghufree () from /opt/oracle/instantclient/libclntsh.so.11.1 (gdb) bt #0 0xb79b3a5e in kghufree () from /opt/oracle/instantclient/libclntsh.so.11.1 #1 0xb79a83a6 in kohfrem () from /opt/oracle/instantclient/libclntsh.so.11.1 #2 0xb79a7b3b in kohfrr () from /opt/oracle/instantclient/libclntsh.so.11.1 #3 0xb68dfe48 in kohfrw () from /opt/oracle/instantclient/libclntsh.so.11.1 #4 0xb685b010 in kollfrfn () from /opt/oracle/instantclient/libclntsh.so.11.1 #5 0xb63f5379 in kpufdesc2 () from /opt/oracle/instantclient/libclntsh.so.11.1 #6 0xb63f4bb1 in kpufdesc () from /opt/oracle/instantclient/libclntsh.so.11.1 #7 0xb63ce20e in OCIDescriptorFree () from /opt/oracle/instantclient/libclntsh.so.11.1 #8 0x08171a7e in oci_blob_close (stream=0xb5be08d0, close_handle=1) at /var/install/source/php-5.2.5/ext/pdo_oci/oci_statement.c:652 #9 0x0837cbdc in _php_stream_free (stream=0xb5be08d0, close_options=11) at /var/install/source/php-5.2.5/main/streams/streams.c:346 #10 0x0837ef17 in stream_resource_regular_dtor (rsrc=0xb5be06bc) at /var/install/source/php-5.2.5/main/streams/streams.c:1369 #11 0x083c85a0 in list_entry_destructor (ptr=0xb5be06bc) at /var/install/source/php-5.2.5/Zend/zend_list.c:184 #12 0x083c5d9a in zend_hash_del_key_or_index (ht=0x852c7e8, arKey=0x0, nKeyLength=0, h=11, flag=1) at /var/install/source/php-5.2.5/Zend/zend_hash.c:497 #13 0x083c825b in _zend_list_delete (id=11) at /var/install/source/php-5.2.5/Zend/zend_list.c:58 #14 0x083b7e54 in _zval_dtor_func (zvalue=0xb5be0858, __zend_filename=0x84f9ebc "/var/install/source/php- 5.2.5/Zend/zend_variables.h", __zend_lineno=35) at /var/install/source/php-5.2.5/Zend/zend_variables.c:60 #15 0x083aa842 in _zval_dtor (zvalue=0xb5be0858, __zend_filename=0x84f9e48 "/var/install/source/php- 5.2.5/Zend/zend_execute_API.c", __zend_lineno=414) at /var/install/source/php-5.2.5/Zend/zend_variables.h:35 #16 0x083aaa00 in _zval_ptr_dtor (zval_ptr=0xb5be09d8, __zend_filename=0x84faf94 "/var/install/source/php- 5.2.5/Zend/zend_variables.c", __zend_lineno=175) at /var/install/source/php-5.2.5/Zend/zend_execute_API.c:414 #17 0x083b81b4 in _zval_ptr_dtor_wrapper (zval_ptr=0xb5be09d8) at /var/install/source/php-5.2.5/Zend/zend_variables.c:175 #18 0x083c5ee5 in zend_hash_destroy (ht=0xb5be07b4) at /var/install/source/php-5.2.5/Zend/zend_hash.c:526 #19 0x083b7e05 in _zval_dtor_func (zvalue=0xb5be0680, __zend_filename=0x84fe2a8 "/var/install/source/php- 5.2.5/Zend/zend_variables.h", __zend_lineno=35) at /var/install/source/php-5.2.5/Zend/zend_variables.c:43 #20 0x083de15b in _zval_dtor (zvalue=0xb5be0680, __zend_filename=0x84fe274 "/var/install/source/php- 5.2.5/Zend/zend_execute.c", __zend_lineno=811) at /var/install/source/php-5.2.5/Zend/zend_variables.h:35 #21 0x083e2203 in zend_assign_to_variable (result=0xb5be2834, op1=0xb5be2848, op2=0xb5be285c, value=0xb5bde518, type=4, Ts=0xbf8a01d0) at /var/install/source/php- 5.2.5/Zend/zend_execute.c:811 ---Type to continue, or q to quit--- #22 0x0842abbe in ZEND_ASSIGN_SPEC_CV_VAR_HANDLER (execute_data=0xbf8a0554) at /var/install/source/php-5.2.5/Zend/zend_vm_execute.h:24176 #23 0x083dec8c in execute (op_array=0xb5bddea8) at /var/install/source/php-5.2.5/Zend/zend_vm_execute.h:92 #24 0x083ba1ab in zend_execute_scripts (type=8, retval=0x0, file_count=3) at /var/install/source/php-5.2.5/Zend/zend.c:1134 #25 0x083691b6 in php_execute_script (primary_file=0xbf8a28f0) at /var/install/source/php-5.2.5/main/main.c:2004 #26 0x08433966 in main (argc=2, argv=0xbf8a2a34) at /var/install/source/php-5.2.5/sapi/cli/php_cli.c:1140 [2008-04-01 11:33:48] [EMAIL PROTECTED] Thank you for this bug report. To properly diagnose the problem, we need a backtrace to see what is happening behind the scenes. To find out how to generate a backtrace, please read http://bugs.php.net/bugs-generating-backtrace.php for *NIX and http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32 Once you have generated a backtrace, please submit it to this bug report and change the status back to "Open". Thank you for helping us make PHP better. --
#44594 [NEW]: unsigned long passed as $n_retries argument to imap_open()
From: [EMAIL PROTECTED] Operating system: Windows XP PHP version: 5.2CVS-2008-04-01 (snap) PHP Bug Type: IMAP related Bug description: unsigned long passed as $n_retries argument to imap_open() Description: When a negative integer is passed as the $n_retries argument to imap_open(), the number is passed as a signed long to the c-client function mail_parameters(), which is expecting an unsigned long to be passed on a SET_MAXLOGINTRIALS call. This results in $n_retries being set to a huge number. The problem is the the function php_imap_do_open() in ext/imap/php_imap.c. Below is a patch written by Andy Wharmby (CVS ID wharmby), it returns a warning if $n_retries is less than 0: The code as it stands is: #ifdef SET_MAXLOGINTRIALS if (myargc == 5) { convert_to_long_ex(retries); mail_parameters(NIL, SET_MAXLOGINTRIALS, (void *) Z_LVAL_PP(retries)); } #endif SOLUTION: #ifdef SET_MAXLOGINTRIALS if (myargc == 5) { convert_to_long_ex(retries); if (retries < 1) { php_error_docref(NULL TSRMLS_CC, E_WARNING ,"Retries cannot be less than 1"); RETURN_FALSE; } mail_parameters(NIL, SET_MAXLOGINTRIALS, (void *) Z_LVAL_PP(retries)); } #endif The documentation for the $n_retries argument also says that the number passed is "Number of maximum connect attempts" which is incorrect. There is always one attempt to connect, if that fails then $n_retries sets how many more attempts are made *after* the initial attempt. Reproduce code: --- -- Edit bug report at http://bugs.php.net/?id=44594&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44594&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44594&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44594&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44594&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44594&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44594&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44594&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44594&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44594&r=support Expected behavior:http://bugs.php.net/fix.php?id=44594&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44594&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44594&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44594&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44594&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44594&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44594&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44594&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44594&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44594&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44594&r=mysqlcfg
#44559 [Bgs]: Array keys being added when returning by reference
ID: 44559 User updated by: kurt at surfmerchants dot com Reported By: kurt at surfmerchants dot com Status: Bogus Bug Type: Arrays related Operating System: Linux PHP Version: 5.2.5 New Comment: Yeah, I see that now in the docs, thanks. However, just because it's in the docs doesn't make it "right" -- this behavior is *very* confusing when it happens. I wonder if any other language does this; it basically means that you can't count on the contents of any array being correct when you iterate over it, unless you created that array yourself are the only one that has accessed it. Previous Comments: [2008-03-29 19:48:13] [EMAIL PROTECTED] Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php Says the documentation: "Note: If you assign, pass or return an undefined variable by reference, it will get created." http://docs.php.net/manual/en/language.references.whatdo.php [2008-03-28 14:05:42] kurt at surfmerchants dot com Description: When returning an array element from a function by reference, if the element key does not exist, the element key is added. Reproduce code: --- class simple { var $items = array(); function &getItem($name) { return $this->items[$name]; } } $obj = new simple(); print "Keys before getting item:\n".print_r(array_keys($obj->items), TRUE)."\n"; $retrieved =& $obj->getItem('SHOULD_NOT_EXIST'); print "Retrieved: \n"; var_dump($retrieved); print "Keys after getting item:\n".print_r(array_keys($obj->items), TRUE)."\n"; Expected result: Keys before getting item: Array ( ) Retrieved: NULL Keys after getting item: Array ( ) Actual result: -- Keys before getting item: Array ( ) Retrieved: NULL Keys after getting item: Array ( [0] => SHOULD_NOT_EXIST ) -- Edit this bug report at http://bugs.php.net/?id=44559&edit=1
#44590 [Opn]: strange behavior of visibility
ID: 44590 User updated by: vituko at gmail dot com Reported By: vituko at gmail dot com Status: Open Bug Type: Class/Object related Operating System: Debian GNU/Linux PHP Version: 5.3CVS-2008-04-01 (CVS) New Comment: The situation with methods is easier : one private method (static or not) can exclusively be accessed from the same context (class body) where it was declared. I think it is more powerfull the other way : when a class declares a method should can invoque it on an object of an inherited class. Previous Comments: [2008-04-01 12:19:50] vituko at gmail dot com Description: Context visibility of inherited private attributes when they apply to child classes. When a private attribtue is inherited, it's still accessible from the context (base class) where it was declared and it becomes accessible from the child context (unidirectional visibility). But when this attribute is static (class attribute), it becomes inaccessible from every context : the base class and the child class. I don't know if it's the normal behavior, anyway I find it strange and it could be documented. Thanks Reproduce code: --- class a { private $v ; private static $w ; function f($c) { $c -> v = 'asdf' ; $c :: $w = 'fdsa' ; } } class b extends a { function g($c) { $c -> v = 'asdf' ; $c :: $w = 'fdsa' ; } } $a = new a() ; $b = new b() ; $a-> f($a) ; $a-> f($b) ; $b -> f($b) ; $b -> g($b) ; Expected result: no errors Actual result: -- A - protected static $w ; all is ok B - private static $w ; 1 : $a-> f($a) ; -> ok 2 : $a-> f($b) ; -> Cannot access property b::$w 3 : $b -> f($b) ; -> Cannot access property b::$w 4 : $b -> g($b) ; -> Cannot access property b::$w 2,3,4 : b:$w is accessible from nowhere. The errors are not : - Access to undeclared static property - Cannot access private property -- Edit this bug report at http://bugs.php.net/?id=44590&edit=1
#44559 [Bgs]: Array keys being added when returning by reference
ID: 44559 Updated by: [EMAIL PROTECTED] Reported By: kurt at surfmerchants dot com Status: Bogus Bug Type: Arrays related Operating System: Linux PHP Version: 5.2.5 New Comment: Use isset() for such occasion. Previous Comments: [2008-04-01 16:45:46] kurt at surfmerchants dot com Yeah, I see that now in the docs, thanks. However, just because it's in the docs doesn't make it "right" -- this behavior is *very* confusing when it happens. I wonder if any other language does this; it basically means that you can't count on the contents of any array being correct when you iterate over it, unless you created that array yourself are the only one that has accessed it. [2008-03-29 19:48:13] [EMAIL PROTECTED] Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php Says the documentation: "Note: If you assign, pass or return an undefined variable by reference, it will get created." http://docs.php.net/manual/en/language.references.whatdo.php [2008-03-28 14:05:42] kurt at surfmerchants dot com Description: When returning an array element from a function by reference, if the element key does not exist, the element key is added. Reproduce code: --- class simple { var $items = array(); function &getItem($name) { return $this->items[$name]; } } $obj = new simple(); print "Keys before getting item:\n".print_r(array_keys($obj->items), TRUE)."\n"; $retrieved =& $obj->getItem('SHOULD_NOT_EXIST'); print "Retrieved: \n"; var_dump($retrieved); print "Keys after getting item:\n".print_r(array_keys($obj->items), TRUE)."\n"; Expected result: Keys before getting item: Array ( ) Retrieved: NULL Keys after getting item: Array ( ) Actual result: -- Keys before getting item: Array ( ) Retrieved: NULL Keys after getting item: Array ( [0] => SHOULD_NOT_EXIST ) -- Edit this bug report at http://bugs.php.net/?id=44559&edit=1
#20215 [Com]: fputs(); (Line Feed / Carriage Return)
ID: 20215 Comment by: webmaster at onmyway dot cz Reported By: admin at serveurperso dot com Status: No Feedback Bug Type: Filesystem function related Operating System: Windows 2000 PHP Version: 4.3.1-dev New Comment: Had this error too, spend hours figuring it out, finally wrote an entire page about it to post here and during testing I found this was a misconfiguration in .htaccess Hope this helps anyone experiencing the same error. Enjoy Previous Comments: [2007-07-18 07:01:24] mufd2002 at hotmail dot com I can't reproduce the problem using PHP 4.3RC1 or the slightly more up to date PHP 4.3 development branch and the script that you provided, either under win XP with IIS or linux. I'm using php.ini-recommended, so please make sure that you don't have any zany settings turned on in your php.ini or server configuration. [2003-02-25 02:04:34] [EMAIL PROTECTED] No feedback was provided. The bug is being suspended because we assume that you are no longer experiencing the problem. If this is not the case and you are able to provide the information that was requested earlier, please do so and change the status of the bug back to "Open". Thank you. [2003-02-19 19:39:13] [EMAIL PROTECTED] What if you write the file in 'wb' (binary) mode? Does it make any difference? [2003-02-11 15:57:26] 6th at katiusha dot com dot ru Funnily, the bug occurs when I run php as a module. When I run php using cgi or commandline, no excess 0D symbols appear. [2003-02-11 15:40:50] 6th at katiusha dot com dot ru PHP 4.3.0 (build Dec 27 2002) Apache 1.3.23 Win ME This: $f=fopen("bug","w"); fwrite($f,"test "); // 74 65 73 74 _0D 0A_ fclose($f); creates file: 74 65 73 74 _0D 0D 0A_ I'm using plain files with ms-dos line breaks to store databases, so fwrite is _very_ important for me to work correctly. The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/20215 -- Edit this bug report at http://bugs.php.net/?id=20215&edit=1
#44594 [Opn->Asn]: unsigned long passed as $n_retries argument to imap_open()
ID: 44594 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Open +Status: Assigned Bug Type: IMAP related Operating System: Windows XP PHP Version: 5.2CVS-2008-04-01 (snap) -Assigned To: +Assigned To: iliaa Previous Comments: [2008-04-01 15:54:57] [EMAIL PROTECTED] Description: When a negative integer is passed as the $n_retries argument to imap_open(), the number is passed as a signed long to the c-client function mail_parameters(), which is expecting an unsigned long to be passed on a SET_MAXLOGINTRIALS call. This results in $n_retries being set to a huge number. The problem is the the function php_imap_do_open() in ext/imap/php_imap.c. Below is a patch written by Andy Wharmby (CVS ID wharmby), it returns a warning if $n_retries is less than 0: The code as it stands is: #ifdef SET_MAXLOGINTRIALS if (myargc == 5) { convert_to_long_ex(retries); mail_parameters(NIL, SET_MAXLOGINTRIALS, (void *) Z_LVAL_PP(retries)); } #endif SOLUTION: #ifdef SET_MAXLOGINTRIALS if (myargc == 5) { convert_to_long_ex(retries); if (retries < 1) { php_error_docref(NULL TSRMLS_CC, E_WARNING ,"Retries cannot be less than 1"); RETURN_FALSE; } mail_parameters(NIL, SET_MAXLOGINTRIALS, (void *) Z_LVAL_PP(retries)); } #endif The documentation for the $n_retries argument also says that the number passed is "Number of maximum connect attempts" which is incorrect. There is always one attempt to connect, if that fails then $n_retries sets how many more attempts are made *after* the initial attempt. Reproduce code: --- -- Edit this bug report at http://bugs.php.net/?id=44594&edit=1
#44590 [Opn->Bgs]: strange behavior of visibility
ID: 44590 User updated by: vituko at gmail dot com Reported By: vituko at gmail dot com -Status: Open +Status: Bogus Bug Type: Class/Object related Operating System: Debian GNU/Linux PHP Version: 5.3CVS-2008-04-01 (CVS) New Comment: Sorry, this report is bogus. I misunderstood the results I got. Previous Comments: [2008-04-01 16:32:36] vituko at gmail dot com The situation with methods is easier : one private method (static or not) can exclusively be accessed from the same context (class body) where it was declared. I think it is more powerfull the other way : when a class declares a method should can invoque it on an object of an inherited class. [2008-04-01 12:19:50] vituko at gmail dot com Description: Context visibility of inherited private attributes when they apply to child classes. When a private attribtue is inherited, it's still accessible from the context (base class) where it was declared and it becomes accessible from the child context (unidirectional visibility). But when this attribute is static (class attribute), it becomes inaccessible from every context : the base class and the child class. I don't know if it's the normal behavior, anyway I find it strange and it could be documented. Thanks Reproduce code: --- class a { private $v ; private static $w ; function f($c) { $c -> v = 'asdf' ; $c :: $w = 'fdsa' ; } } class b extends a { function g($c) { $c -> v = 'asdf' ; $c :: $w = 'fdsa' ; } } $a = new a() ; $b = new b() ; $a-> f($a) ; $a-> f($b) ; $b -> f($b) ; $b -> g($b) ; Expected result: no errors Actual result: -- A - protected static $w ; all is ok B - private static $w ; 1 : $a-> f($a) ; -> ok 2 : $a-> f($b) ; -> Cannot access property b::$w 3 : $b -> f($b) ; -> Cannot access property b::$w 4 : $b -> g($b) ; -> Cannot access property b::$w 2,3,4 : b:$w is accessible from nowhere. The errors are not : - Access to undeclared static property - Cannot access private property -- Edit this bug report at http://bugs.php.net/?id=44590&edit=1
#44596 [NEW]: PHP crashes after calling exit() from an auto_prepend_file many times.
From: php at timkoop dot com Operating system: Windows NT WEBSERVER 5.2 build 3 PHP version: 5.2.5 PHP Bug Type: Reproducible crash Bug description: PHP crashes after calling exit() from an auto_prepend_file many times. Description: When using an auto_prepend file, if you call exit() in this prepended file, it works fine for a while. But after about 400 or 500 or 600 times calling any php page on the website, you receive a simple "No input file specified". And every site in IIS also displays this message on php pages. This page describes why you would want to do this: http://www.ilovejackdaniels.com/php/caching-output-in-php/ Reproduce code: --- In php.ini, set an auto_prepend file like this: auto_prepend_file = prepend.php In prepend.php, put something like this: This comes from prepend.php"; exit(); ?> (Actually, this above code might have to be in an included file that was called from prepend.php) Now you have to call any page in the website a few hundred times before the error kicks in. The first few times will appear to work as expected. A small bash script to do this for you might look like this (for your convenience only; not a part of the bug): for ((i=1;i<=1000;i+=1)); do echo $i wget http://yoursite.com/anyfile.php --quiet --output-document=/dev/null done Expected result: I would expect the prepended file to produce the following code and the actual called file would not produce anything, so this would be the entire html returned no matter what file you called: This comes from prepend.php This does actually work the first few hundred times. Actual result: -- The expected result is returned (correctly) a few hundred times. Then after that, the following line is returned: No input file specified. After this, IIS must be restarted to get back to normal. I will happily provide a backtrace if needed. -- Edit bug report at http://bugs.php.net/?id=44596&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44596&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44596&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44596&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44596&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44596&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44596&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44596&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44596&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44596&r=support Expected behavior:http://bugs.php.net/fix.php?id=44596&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44596&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44596&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44596&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44596&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44596&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44596&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44596&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44596&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44596&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44596&r=mysqlcfg
#44597 [NEW]: Postgres driver does not prepare booleans correctly
From: kenaniah at gmail dot com Operating system: Red Hat 4.1.1 PHP version: 5.2.5 PHP Bug Type: PDO related Bug description: Postgres driver does not prepare booleans correctly Description: When using postgres via PDO and attempting to execute an INSERT or UPDATE query using $stmt->execute(array_values($data)) syntax, postgres returns an error for any boolean fields that may be present. Reproduce code: --- prepare($sql); $stmt->execute($values); ?> Expected result: PDO will recognize that the values in the array are boolean, and will provide these values to the prepared statement as correctly-formatted booleans. Actual result: -- PostgreSQL 8.1.9 returns an error stating that the provided values for the booleans are not in the correct format, and may need to be type-casted. -- Edit bug report at http://bugs.php.net/?id=44597&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44597&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44597&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44597&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44597&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44597&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44597&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44597&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44597&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44597&r=support Expected behavior:http://bugs.php.net/fix.php?id=44597&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44597&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44597&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44597&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44597&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44597&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44597&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44597&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44597&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44597&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44597&r=mysqlcfg
#44542 [Opn]: __tostring does not work when using it for calling a function
ID: 44542 Updated by: [EMAIL PROTECTED] Reported By: account at dds dot nl Status: Open Bug Type: Scripting Engine problem Operating System: Windows Vista PHP Version: 5.2.5 New Comment: This seems expected, as an object also isn't converted when passed on array key. (i.e. $arr[$obj]) and any other cases. Previous Comments: [2008-03-30 16:02:55] php at xuefeng dot org try this patch. Index: zend_vm_execute.h === RCS file: /repository/ZendEngine2/zend_vm_execute.h,v retrieving revision 1.62.2.30.2.49.2.45 diff -u -r1.62.2.30.2.49.2.45 zend_vm_execute.h --- zend_vm_execute.h 28 Mar 2008 14:34:59 - 1.62.2.30.2.49.2.45 +++ zend_vm_execute.h 30 Mar 2008 15:54:50 - @@ -28885,6 +28885,7 @@ { zend_op *opline = EX(opline); zval *function_name; + zval *name_is_object_method; char *function_name_strval; int function_name_strlen; @@ -28893,6 +28894,13 @@ function_name = _get_zval_ptr_cv(&opline->op2, EX(Ts), BP_VAR_R TSRMLS_CC); + if (Z_TYPE_P(function_name) == IS_OBJECT && Z_OBJ_HT_P(function_name)->get_method != NULL) { + ALLOC_INIT_ZVAL(name_is_object_method); + if (zend_std_cast_object_tostring(function_name, name_is_object_method, IS_STRING TSRMLS_CC) == SUCCESS) { + function_name = name_is_object_method; + } + } + if (Z_TYPE_P(function_name)!=IS_STRING) { zend_error_noreturn(E_ERROR, "Method name must be a string"); } [2008-03-26 22:24:22] account at dds dot nl Description: When I try to use __tostring to call a function I get an error that 'the function name must be a string'. While calling a class member with __tostring does work. --Steven Reproduce code: --- $test."\n"; print $test->$function_name()."\n"; print $test->$test()."\n"; ?> Expected result: -- PHP -- string Class member named `string`. This is a string from a function. This is a string from a function. Output completed (0 sec consumed) Actual result: -- -- PHP -- string Class member named `string`. This is a string from a function. Fatal error: Method name must be a string in C:\projects\test.php on line 18 Output completed (0 sec consumed) -- Edit this bug report at http://bugs.php.net/?id=44542&edit=1
#44591 [Opn]: Debian Linux 2.6.18-5-686 #1 SMP Mon Dec 24 16:41:07 UTC 2007 i686 GNU/Linux
ID: 44591 Updated by: [EMAIL PROTECTED] Reported By: woeterman at gmail dot com Status: Open Bug Type: GD related Operating System: imagegif's filename parameter PHP Version: 5.2CVS-2008-04-01 (CVS) New Comment: Index: ext/gd/gd.c === RCS file: /repository/php-src/ext/gd/gd.c,v retrieving revision 1.312.2.20.2.32.2.3 diff -u -p -r1.312.2.20.2.32.2.3 gd.c --- ext/gd/gd.c 10 Mar 2008 22:12:34 - 1.312.2.20.2.32.2.3 +++ ext/gd/gd.c 1 Apr 2008 23:45:00 - @@ -2812,7 +2812,7 @@ static void _php_image_output(INTERNAL_F } } - if ((argc == 2) || (argc > 2 && Z_STRLEN_PP(file))) { + if (argc >= 2 && Z_STRLEN_PP(file)) { PHP_GD_CHECK_OPEN_BASEDIR(fn, "Invalid filename"); fp = VCWD_FOPEN(fn, "wb"); I think that this should solve this problem. Previous Comments: [2008-04-01 12:44:13] woeterman at gmail dot com Description: The documentation says: 'The path to save the file to. If not set or NULL, the raw image stream will be outputted directly.' But when using null, the image is not saved to a file, but not displayed on the screen either. Reproduce code: --- Expected result: First line to save the file to 'test.jpg', which works. The last 2 lines to display the image on the screen, but only the last one does. Actual result: -- First line saves the file, middle line seems to do nothing, and the last line displays the image on the screen. -- Edit this bug report at http://bugs.php.net/?id=44591&edit=1
#44587 [Opn->Bgs]: Problems whene asking if a key of an array isset, and the variable is not array
ID: 44587 Updated by: [EMAIL PROTECTED] Reported By: francesco at facconi dot eu -Status: Open +Status: Bogus Bug Type: Arrays related Operating System: Linux 2.6.18-6-686 PHP Version: 5.2.5 New Comment: This is expected, the string key is converted to integer. Previous Comments: [2008-04-01 10:48:21] francesco at facconi dot eu Description: I was evaluating a variable with isset. I don't know what kind of variable it is before evaluating. If I do a isset of a key of an array, and the variable is NOT an array, I receive a true response. I think this is not a good result. Reproduce code: --- function verify($var) { if (isset($var['key'])) { echo "OK"; } else { echo "NO"; } return; } verify ('asdfghjkl'); verify (array('key'=>'1', 'option'=>'2'); verify (array('action'=>'1', 'option'=>'2'); Expected result: ## verify ('asdfghjkl'); NO ## verify (array('key'=>'1', 'option'=>'2'); OK ## verify (array('action'=>'1', 'option'=>'2'); NO Actual result: -- ## verify ('asdfghjkl'); OK ## verify (array('key'=>'1', 'option'=>'2'); OK ## verify (array('action'=>'1', 'option'=>'2'); NO -- Edit this bug report at http://bugs.php.net/?id=44587&edit=1
#31050 [Com]: SOAP class will not parse WSDL file located on a secure HTTPS connection
ID: 31050 Comment by: jfarhat at kirkhamsystems dot com Reported By: dylanwoster at mac dot com Status: No Feedback Bug Type: SOAP related Operating System: Mac OS X 10.3.6 PHP Version: 5.0.2 Assigned To: dmitry New Comment: I am also having the same problem in PHP 5.2.5. the procedure code at the end of the message works for HTTP but fails with HTTPS with the message: SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://arcweb.esri.com/services/v2/Authentication.wsdl' Reproduce code: --- $client = new SoapClient( "https://arcweb.esri.com/services/v2/Authentication.wsdl"; ); echo( $client->getVersion( ) ); Previous Comments: [2008-01-23 04:31:10] marcus dot uy at virtualthinking dot com Hi, Having similar problem on Windows XP Pro: Apache 2.2.8 PHP 5.2.5 OpenSSL 0.9.8g In my case the connectiion works once, then fails on the next connection attempt. I then have to restart apache because the soapserver becomes completely unresponsive. [2008-01-03 13:08:19] php at eflow dot dk I have the problem too, on Gentoo Linux. Apache 2.2.6 PHP 5.2.5 OpenSSL 0.9.8g Configuration: './configure' '--prefix=/usr/lib/php5' '--host=i686-pc-linux-gnu' '--mandir=/usr/lib/php5/man' '--infodir=/usr/lib/php5/info' '--sysconfdir=/etc' '--cache-file=./config.cache' '--disable-cli' '--with-apxs2=/usr/sbin/apxs2' '--with-config-file-path=/etc/php/apache2-php5' '--with-config-file-scan-dir=/etc/php/apache2-php5/ext-active' '--without-pear' '--disable-bcmath' '--with-bz2' '--disable-calendar' '--with-curl' '--with-curlwrappers' '--disable-dbase' '--disable-exif' '--without-fbsql' '--without-fdftk' '--disable-filter' '--disable-ftp' '--with-gettext' '--without-gmp' '--disable-hash' '--disable-json' '--without-kerberos' '--enable-mbstring' '--with-mcrypt' '--without-mhash' '--without-msql' '--without-mssql' '--with-ncurses' '--with-openssl' '--with-openssl-dir=/usr' '--disable-pcntl' '--disable-pdo' '--without-pgsql' '--disable-posix' '--with-pspell' '--without-recode' '--disable-shmop' '--without-snmp' '--enable-soap' '--disable-sockets' '--without-sybase' '--without-sybase-ct' '--disable-sysvmsg' '--disable-sysvsem' '--disable-sysvshm' '--without-tidy' '--disable-wddx' '--with-xmlrpc' '--with-xsl' '--enable-zip' '--with-zlib' '--disable-debug' '--enable-dba' '--without-cdb' '--with-db4' '--without-flatfile' '--with-gdbm' '--without-inifile' '--without-qdbm' '--with-freetype-dir=/usr' '--with-t1lib=/usr' '--disable-gd-jis-conv' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--without-xpm-dir' '--with-gd' '--with-ldap' '--with-ldap-sasl' '--with-mysql=/usr' '--with-mysql-sock=/var/run/mysqld/mysqld.sock' '--with-mysqli=/usr/bin/mysql_config' '--with-readline' '--without-libedit' '--without-mm' '--with-sqlite=/usr' '--enable-sqlite-utf8' [2007-05-05 08:25:38] john at soundreal dot co dot uk I'm getting the same problem Mac OS X 10.4.9 PHP 5.2.1 $SoapClient=new SoapClient('https://api.foo.com/fooService.wsdl' ,array("connection_timeout"=>5)); './configure' '--prefix=/Library/PHP5' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--with-zlib' '--with-xml' '--with-zlib-dir=/usr' '--with-openssl' '--enable-exif' '--enable-ftp' '--enable-mbstring' '--enable-mbregex' '--enable-sockets' '--with-mysql=/usr/local/mysql' '--with-mysqli=/usr/local/mysql/bin/mysql_config' '--with-apxs' '--with-libjpeg' '--with-libtiff=/sw' '--with-libpng' '--with-gd' '--with-gettext' '--enable-soap' '--with-curl' [2007-04-19 02:47:58] kkallio at micorp dot com dot ve Same problem on a modified Debian Sarge, PHP 5.2.0 './configure' '--prefix=/usr' '--libexecdir=/usr/lib/php5.2.0/libexec' '--datadir=/usr/share/php5.2.0' '--sysconfdir=/etc/php5.2.0' '--includedir=/usr/include/php5.2.0' '--with-config-file-path=/etc/php5.2.0' '--with-apxs2=/usr/bin/apxs2' '--with-odbtp=/usr' '--with-kerberos' '--with-pcre-regex' '--enable-versioning' '--enable-sigchild' '--enable-magic-quotes' '--enable-mbstring' '--enable-session' '--enable-mbregex' '--enable-msession' '--with-openssl' '--enable-pdo' '--with-pdo-mysql' '--with-pdo-oci=instantclient,/usr/lib/oracle/10.2.0.2,10.1' '--with-pdo-odbc=unixODBC,/usr' '--with-pdo-pgsql' '--with-pdo-firebird' '--without-pdo-sqlite' '--enable-bcmath' '--with-bz2' '--enable-calendar' '--enable-ctype' '--with-curl' '--with-curlwrappers' '--enable-dba' '--with-gdbm' '--with-db4' '--with-cdb' '--with-inifile' '--with-flatfile' '--enable-dbase' '--enable-exif' '--enable-filepro' '--enable-ftp' '--with-gd' '--with-jpeg-dir' '--with-png-dir' '--with-zlib-dir' '--enable-gd-native-ttf' '--enable-gd-jis-conv' '--with-ttf' '--with-freetype-d
#44599 [NEW]: Loosing clients will pay for a fix ASAP
From: RJTrawinski at RJTCOnsulting dot com Operating system: 2003 Server Enterprise PHP version: 5.2.5 PHP Bug Type: IIS related Bug description: Loosing clients will pay for a fix ASAP Description: CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. WA too many hours with this, trying to hang myself. WIll PAY for a fix, i'm loosing clients. I went through all this http://bugs.php.net/bug.php?id=25863. Will give instant VNC or remote desktop access to my server. please help.. will pay. Thanks RIch [EMAIL PROTECTED] -- Edit bug report at http://bugs.php.net/?id=44599&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44599&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44599&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44599&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44599&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44599&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44599&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44599&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44599&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44599&r=support Expected behavior:http://bugs.php.net/fix.php?id=44599&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44599&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44599&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44599&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44599&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44599&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44599&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44599&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44599&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44599&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44599&r=mysqlcfg
#44600 [NEW]: --disable-all causes SPL-related error
From: tobias382 at gmail dot com Operating system: Kubuntu 7.10 PHP version: 5.2.5 PHP Bug Type: Compile Failure Bug description: --disable-all causes SPL-related error Description: When building from the 5.2.5 source tarball with --disable-all and without --enable-spl, a block of code in ext/standard/array.c that is intended only for builds with SPL enabled is still being included. Reproduce code: --- ./configure --prefix=build/php_build --disable-all --disable-cgi --with-pcre-regex make Expected result: If --disable-all is enabled and --enable-spl is not (both of which are true in the aforementioned configure line), PHP should compile without issue. Actual result: -- ext/standard/array.o: In function `zif_count': ext/standard/array.c:324: undefined reference to `spl_ce_Countable' collect2: ld returned 1 exit status make: *** [sapi/cli/php] Error 1 -- Edit bug report at http://bugs.php.net/?id=44600&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44600&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44600&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44600&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44600&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44600&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44600&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44600&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44600&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44600&r=support Expected behavior:http://bugs.php.net/fix.php?id=44600&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44600&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44600&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44600&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44600&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44600&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44600&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44600&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44600&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44600&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44600&r=mysqlcfg
#44603 [NEW]: HTTP streams wrapper issue with Content-Type header
From: tobias382 at gmail dot com Operating system: Kubuntu 7.10 PHP version: 5.2.5 PHP Bug Type: HTTP related Bug description: HTTP streams wrapper issue with Content-Type header Description: Specifying a Content-type header in a streams operation using the HTTP wrapper causes a file_get_contents operation using that streams context to fail. Not specifying the Content-type header results in a Notice being issued saying that application/x-www-form-urlencoded is assumed and the script then works as expected. Reproduce code: --- http://paste2.org/p/18455 Expected result: Should send a URL in the following format to stdout, where # is a number. http://paste2.org/p/# Actual result: -- Warning: file_get_contents(http://paste2.org/new-paste): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/matt/pastebin.php on line 21 -- Edit bug report at http://bugs.php.net/?id=44603&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=44603&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=44603&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=44603&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=44603&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=44603&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=44603&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=44603&r=needscript Try newer version:http://bugs.php.net/fix.php?id=44603&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=44603&r=support Expected behavior:http://bugs.php.net/fix.php?id=44603&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=44603&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=44603&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=44603&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=44603&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=44603&r=dst IIS Stability:http://bugs.php.net/fix.php?id=44603&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=44603&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=44603&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=44603&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=44603&r=mysqlcfg
#25876 [Com]: session_start(): Failed to initialize storage module
ID: 25876 Comment by: webmaster at mindrabbit dot com Reported By: golden at riscom dot com Status: No Feedback Bug Type: Session related Operating System: freebsd 4.8 PHP Version: 4.3.9-4.3.10 New Comment: This bug is easy to repeat in following way: 1) Set session_save_handler to user based like DB 2) Start page like normal, start session etc 3) CHANGE your session_id BEFORE you print anything to your screen 3.1) Destroy the old session_id 3.2) set new session id with session_id('your_id') 3.3) Try start_session() which will produce error message Problem is that system can not init custom session_save_handler in some odd reason. When changing session_handler to local files, anything goes normal. But with custom save handler like memcache or DB backend, code will fail. When you refresh page, problem disappears. I have tested this with Apache 2.2.8, PHP 5.2.5 and MySQL 5.1.23RC and with newest memcache. --JT-- Previous Comments: [2008-02-16 11:11:07] notrevevirtual at gmail dot com System: FreeBSD 6.2-RELEASE PHP Version 5.2.5 Apache Version Apache/2.0.63 (Unix) This problem started after an server update (php+mysql+apache). None of the solutions found here can fix it. [2007-09-13 01:00:01] php-bugs at lists dot php dot net No feedback was provided for this bug for over a week, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open". [2007-09-05 13:51:04] [EMAIL PROTECTED] Can your reproduce this with PHP 5.2.4 or greater? (in case we happen to release 5.2.5 in the meantime :) [2007-08-30 07:54:07] golden at riscom dot com > We are currently having problem with the same think at one of our servers. [2007-06-27 23:15:12] josh at spinningplanet dot co dot nz Try disabling safe mode The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/25876 -- Edit this bug report at http://bugs.php.net/?id=25876&edit=1