#38042 [Opn->Bgs]: Session destroy/restart not working
ID: 38042 Updated by: [EMAIL PROTECTED] Reported By: ewilde at bsmdevelopment dot com -Status: Open +Status: Bogus Bug Type: Session related Operating System: Windoze 2003 PHP Version: 5.1.4 New Comment: 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 Previous Comments: [2006-07-09 00:35:02] ewilde at bsmdevelopment dot com Description: Session destroy followed by session start appears to no longer start a new session. The attached code works on 5.1.2 but fails on 5.1.4. Reproduce code: --- // Start a new session. This sends a session cookie. session_start(); if (strlen(session_id()) > 0) { // Unset all of the session variables. $_SESSION = array(); // Delete the session cookie. if (isset($_COOKIE[session_name()])) setcookie(session_name(), '', time()-42000, '/'); // Finally, destroy the session itself. session_destroy(); // Now, fire up a new session. This should send another session cookie. session_start(); } Session cookie test page function SessionCookieCheck() { // Look for the start of the session ID cookie in the middle of the cookies // string. If we don't find it there, look for it at the very beginning. if ((document.cookie.indexOf('') == -1) && (document.cookie.indexOf('') != 0)) window.alert('Cookies must be enabled for this site before you can continue!'); } Cookie, cookie, who has the cookie? Expected result: >From HTTPLook Set-Cookie: PHPSESSID=a8285938718a2985abb6aefa834c7a2f; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Set-Cookie: PHPSESSID=deleted; expires=Sat, 09-Jul-2005 00:18:22 GMT; path=/ Set-Cookie: PHPSESSID=a8285938718a2985abb6aefa834c7a2f; path=/ Actual result: -- >From HTTPLook First, third, etc. time Set-Cookie: PHPSESSID=3sfu3fa1q2f564dib6dfqtv202; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Set-Cookie: PHPSESSID=ubjl6940iru1vnel68ha0uvj11; path=/ Second, fourth, etc. time Set-Cookie: PHPSESSID=deleted; expires=Sat, 09-Jul-2005 00:17:46 GMT; path=/ -- Edit this bug report at http://bugs.php.net/?id=38042&edit=1
#38043 [Opn->Bgs]: Always tries to connect to client on same outgoing port
ID: 38043 Updated by: [EMAIL PROTECTED] Reported By: aeolianmeson at blitzeclipse dot com -Status: Open +Status: Bogus Bug Type: Sockets related Operating System: Fedora 4 PHP Version: 5.1.4 New Comment: And it is PHP problem because .?. ? This is what getsockname() returns, socket_getsockname() is just a wrapper. Previous Comments: [2006-07-09 03:47:37] aeolianmeson at blitzeclipse dot com Description: I am connecting to myself and then closing, to sniff out available ports on my system that I can use-- I'm sure you're acquainted with this method. It should always produce a different port (nPort), since no connection is erected (because it's UDP), but it always returns that it is on the SAME port. Dustin Oprea Reproduce code: --- $n = 10; while($n--) { $strIP = $nPort = -1; $Socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP); socket_connect($Socket, '172.0.0.1', 8400); socket_getsockname($Socket, $strAddr, $nPort); socket_close($Socket); print("> Available port: $strAddr:$nPort\n"); } Expected result: It produces ten lines of output, that should each contain one unique, available port number. Actual result: -- Each line indicates the same port, even if a socket has been opened for listening on it. The problem I am having, therefore, is that I sniff the next available port from this code, and set up a listener on it. I then do the same thing again in order to open another listener on a different port, but it always returns to me the same port number, and I can not not bind it, obviously. Is this intended? -- Edit this bug report at http://bugs.php.net/?id=38043&edit=1
#38043 [Bgs]: Always tries to connect to client on same outgoing port
ID: 38043 User updated by: aeolianmeson at blitzeclipse dot com Reported By: aeolianmeson at blitzeclipse dot com Status: Bogus Bug Type: Sockets related Operating System: Fedora 4 PHP Version: 5.1.4 New Comment: There have been problems in the past in the translation of system calls through PHP... I wasn't sure if that was the intended effect. I've found that I can circumvent this inherent flaw, by opening up another socket before the first is closed. This will render a different port. Is this then, the only way to find an available port with PHP? Dustin Previous Comments: [2006-07-09 07:48:14] [EMAIL PROTECTED] And it is PHP problem because .?. ? This is what getsockname() returns, socket_getsockname() is just a wrapper. [2006-07-09 03:47:37] aeolianmeson at blitzeclipse dot com Description: I am connecting to myself and then closing, to sniff out available ports on my system that I can use-- I'm sure you're acquainted with this method. It should always produce a different port (nPort), since no connection is erected (because it's UDP), but it always returns that it is on the SAME port. Dustin Oprea Reproduce code: --- $n = 10; while($n--) { $strIP = $nPort = -1; $Socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP); socket_connect($Socket, '172.0.0.1', 8400); socket_getsockname($Socket, $strAddr, $nPort); socket_close($Socket); print("> Available port: $strAddr:$nPort\n"); } Expected result: It produces ten lines of output, that should each contain one unique, available port number. Actual result: -- Each line indicates the same port, even if a socket has been opened for listening on it. The problem I am having, therefore, is that I sniff the next available port from this code, and set up a listener on it. I then do the same thing again in order to open another listener on a different port, but it always returns to me the same port number, and I can not not bind it, obviously. Is this intended? -- Edit this bug report at http://bugs.php.net/?id=38043&edit=1
#38045 [NEW]: Integer mathematics problem
From: igor at oleinikov dot ru Operating system: FreeBSD 6.1 Release PHP version: 5.1.4 PHP Bug Type: Scripting Engine problem Bug description: Integer mathematics problem Description: When I want to calculate integer summ of two integers with overflow, I get unexpected result, becouse result converts to float, then converts to integer. Important: I've tested this example on two systems with same versions of php (5.1.4) and different versions of freebsd (4.11 and 6.1). On last operation [$b = (int)($a + $a)], freebsd 4.11 produce expected result: int(0), but freebsd 6.1 produce minimal integer (-2147483648). How can I implement algorithm with integer mathematics, that requires overflows? i have it successfully working on freebsd 4.11, but it don't work on freebsd 6.1 (( Reproduce code: --- $a = 0x8000; //i'd like it would integer, but it float ;) var_dump($a, dechex($a)); $a = (int)0x8000; //ok, i'll make it integer myself var_dump($a, dechex($a)); $b = $a + $a; //int + int = int ? var_dump($b, dechex($b)); $b = (int)($a + $a); var_dump($b, dechex($b)); Expected result: int(-2147483648) string(8) "8000" int(-2147483648) string(8) "8000" int(0) string(8) "0" //expected, int + int = int with overflow int(0) string(8) "0" //expected, conversion with overflow Actual result: -- float(2147483648) string(8) "8000" // expected int int(-2147483648) string(8) "8000" // when I convert to int myself float(-4294967296) string(8) "8000" //expected int, but it overflows and converts to float int(-2147483648) string(8) "8000" -- Edit bug report at http://bugs.php.net/?id=38045&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=38045&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=38045&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=38045&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=38045&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=38045&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=38045&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=38045&r=needscript Try newer version:http://bugs.php.net/fix.php?id=38045&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=38045&r=support Expected behavior:http://bugs.php.net/fix.php?id=38045&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=38045&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=38045&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=38045&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=38045&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=38045&r=dst IIS Stability:http://bugs.php.net/fix.php?id=38045&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=38045&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=38045&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=38045&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=38045&r=mysqlcfg
#38045 [Opn->Bgs]: Integer mathematics problem
ID: 38045 Updated by: [EMAIL PROTECTED] Reported By: igor at oleinikov dot ru -Status: Open +Status: Bogus Bug Type: Scripting Engine problem Operating System: FreeBSD 6.1 Release PHP Version: 5.1.4 New Comment: 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 32bit Previous Comments: [2006-07-09 09:30:38] igor at oleinikov dot ru Description: When I want to calculate integer summ of two integers with overflow, I get unexpected result, becouse result converts to float, then converts to integer. Important: I've tested this example on two systems with same versions of php (5.1.4) and different versions of freebsd (4.11 and 6.1). On last operation [$b = (int)($a + $a)], freebsd 4.11 produce expected result: int(0), but freebsd 6.1 produce minimal integer (-2147483648). How can I implement algorithm with integer mathematics, that requires overflows? i have it successfully working on freebsd 4.11, but it don't work on freebsd 6.1 (( Reproduce code: --- $a = 0x8000; //i'd like it would integer, but it float ;) var_dump($a, dechex($a)); $a = (int)0x8000; //ok, i'll make it integer myself var_dump($a, dechex($a)); $b = $a + $a; //int + int = int ? var_dump($b, dechex($b)); $b = (int)($a + $a); var_dump($b, dechex($b)); Expected result: int(-2147483648) string(8) "8000" int(-2147483648) string(8) "8000" int(0) string(8) "0" //expected, int + int = int with overflow int(0) string(8) "0" //expected, conversion with overflow Actual result: -- float(2147483648) string(8) "8000" // expected int int(-2147483648) string(8) "8000" // when I convert to int myself float(-4294967296) string(8) "8000" //expected int, but it overflows and converts to float int(-2147483648) string(8) "8000" -- Edit this bug report at http://bugs.php.net/?id=38045&edit=1
#33140 [Com]: Recursive 'mkdir' doesn't work when path includes a non-existent root folder
ID: 33140 Comment by: zefredz at gmail dot com Reported By: cbelin at free dot fr Status: No Feedback Bug Type: Directory function related Operating System: Win32 PHP Version: 5CVS-2005-05-26 New Comment: It still does not work with '/' and recursive mode under windows : Warning: mkdir(): No such file or directory in C:\var\downloads\php5.2-win32-latest\test_mkdir.php on line 2 and Using '\' works : and work fine. There is no problem in non-recursive mode and the following works fine : $path = 'tata/toto/tutu/titi'; $parts = explode( '/', $path ); $trail = ''; foreach( $parts as $part ) { $trail .= $part . '/'; if ( file_exists( $trail ) ) { return false; } else { if ( is_dir( dirname( $trail ) ) ) { mkdir ( $trail, 0777 ); } } } Previous Comments: [2006-06-28 01:00:00] 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". [2006-06-20 16:16:11] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows: http://snaps.php.net/win32/php5.2-win32-latest.zip [2006-03-29 20:07:32] ksteinhoff at gmail dot com I see this bug on Mac OS X 10.4.5 with PHP 5.1.2. I've also noticed what I assume is a related problem with creating directories in the current directory. For example, if I run the script below in /tmp, the second (and fifth) mkdir will fail. [2006-03-15 09:02:51] zefredz at gmail dot com I have made a little test and I figure out taht giving the full path is not required but that you have to use the backslashes instead of the slashes to make the recursive mkdir work : mkdir ('toto/tutu/titi', 0777, true); # FAILS mkdir ('toto\tutu\titi', 0777, true); # WORKS But when not in recursive mode, mkdir works with either slashes or backslashes. [2006-03-15 08:48:03] zefredz at gmail dot com I have the same bug with PHP 5.0.4 and the given snapshot. But other PHP developpers in my development team does not get the error message while using the same PHP version than mine. The problem occurs on my computer with PHP 5.1 too. The only difference I can figure out between those developers and I is that I am still using Windows XP SP1 while they are using Windows XP SP2. Can this be the cause of the bug ? 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/33140 -- Edit this bug report at http://bugs.php.net/?id=33140&edit=1
#38047 [NEW]: "file" and "line" sometimes not set in backtrace from inside error handler
From: thuejk at gmail dot com Operating system: Linux PHP version: 5.1.4 PHP Bug Type: Unknown/Other Function Bug description: "file" and "line" sometimes not set in backtrace from inside error handler Description: I generate a backtrace from inside my error handler. Among other things I use the file and line numbers in the error handler. In one case, inconsistent with behaviour for other types of errors, file and line are not set in the frame for the error handler transition in the backtrace. I think (without bothering to check) that this error was introduced after I upgraded from 5.0.4 to 5.1.4 Reproduce code: --- ";print_r($backtrace); } //If this is uncommented, the resulting code will have file and line set for the call into the error handler. #$a = $aa; //This will not create file and line items for the call into the error handler $page["name"] = A::A_ftk(); ?> Expected result: $backtrace[1]["file"] and $backtrace[1]["line"] should be set. Actual result: -- Notice: Undefined index: line in /home/tjk/kalus3_clean/trunk/src/web/include/setup.php on line 17 Array ( [0] => Array ( [file] => /home/tjk/kalus3_clean/trunk/src/web/include/setup.php [line] => 12 [function] => get_error_context [args] => Array ( ) ) [1] => Array ( [function] => kalus_error_handler [args] => Array ( [0] => 2048 [1] => Non-static method A::A_ftk() should not be called statically [2] => /home/tjk/kalus3_clean/trunk/src/web/include/setup.php [3] => 25 [4] => Array ( [GLOBALS] => Array *RECURSION* [_POST] => Array ( ) [_GET] => Array ( ) [_COOKIE] => Array ( [__utma] => 192968248.1592420362.1149610271.1149805566.1149849975.6 [__utmz] => 192968248.1149620260.3.2.utmccn=(referral)|utmcsr=mail.google.com|utmcct=/mail/|utmcmd=referral [PHPSESSID] => o194fe6r7m7fvgm4do1dspqnk0 ) [_FILES] => Array ( ) ) ) ) [2] => Array ( [file] => /home/tjk/kalus3_clean/trunk/src/web/include/setup.php [line] => 25 [function] => A_ftk [class] => A [type] => :: [args] => Array ( ) ) ) -- Edit bug report at http://bugs.php.net/?id=38047&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=38047&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=38047&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=38047&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=38047&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=38047&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=38047&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=38047&r=needscript Try newer version:http://bugs.php.net/fix.php?id=38047&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=38047&r=support Expected behavior:http://bugs.php.net/fix.php?id=38047&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=38047&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=38047&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=38047&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=38047&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=38047&r=dst IIS Stability:http://bugs.php.net/fix.php?id=38047&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=38047&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=38047&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=38047&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=38047&r=mysqlcfg
#38048 [NEW]: $_SESSION cannot be changed after copying into it another array
From: seitenzahl at hotmail dot com Operating system: Windows XP PHP version: 5.1.4 PHP Bug Type: Session related Bug description: $_SESSION cannot be changed after copying into it another array Description: After doing something like $oldsessiondata = $_SESSION; the changes to $_SESSION won't be committed to the session itself anymore. I don't think $_SESSION should lose its magic properties in this case. Reproduce code: --- Expected result: Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore [test] => foo ) After reload: Array ( [testbefore] => foobefore [test] => foo ) Array ( [testbefore] => foobefore [test] => foo ) Array ( [testbefore] => foobefore [test] => foo ) Actual result: -- Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore [test] => foo ) After reload: Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore [test] => foo ) -- Edit bug report at http://bugs.php.net/?id=38048&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=38048&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=38048&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=38048&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=38048&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=38048&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=38048&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=38048&r=needscript Try newer version:http://bugs.php.net/fix.php?id=38048&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=38048&r=support Expected behavior:http://bugs.php.net/fix.php?id=38048&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=38048&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=38048&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=38048&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=38048&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=38048&r=dst IIS Stability:http://bugs.php.net/fix.php?id=38048&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=38048&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=38048&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=38048&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=38048&r=mysqlcfg
#38048 [Opn]: $_SESSION cannot be changed after copying it into another array
ID: 38048 User updated by: seitenzahl at hotmail dot com -Summary: $_SESSION cannot be changed after copying into it another array Reported By: seitenzahl at hotmail dot com Status: Open Bug Type: Session related Operating System: Windows XP PHP Version: 5.1.4 New Comment: Fixed a typo in the summary. Previous Comments: [2006-07-09 15:03:34] seitenzahl at hotmail dot com Description: After doing something like $oldsessiondata = $_SESSION; the changes to $_SESSION won't be committed to the session itself anymore. I don't think $_SESSION should lose its magic properties in this case. Reproduce code: --- Expected result: Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore [test] => foo ) After reload: Array ( [testbefore] => foobefore [test] => foo ) Array ( [testbefore] => foobefore [test] => foo ) Array ( [testbefore] => foobefore [test] => foo ) Actual result: -- Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore [test] => foo ) After reload: Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore [test] => foo ) -- Edit this bug report at http://bugs.php.net/?id=38048&edit=1
#38049 [NEW]: A problem with values returned by ArrayAccess::offsetGet()
From: vma1 at abv dot bg Operating system: Linux PHP version: 5CVS-2006-07-09 (snap) PHP Bug Type: Arrays related Bug description: A problem with values returned by ArrayAccess::offsetGet() Description: Values returned by ArrayAccess::offsetGet() cannot be used as a search key in a call to array_key_exists(). It looks like for some reason the scripting engine requires that the first argument of array_key_exists() is writable, which conflicts with the documented prototype of array_key_exists(). The sample code works fine with PHP 5.1.4 so it is a problem introduced in PHP 5.2. Reproduce code: --- Expected result: The program should terminate with no output at all. Actual result: -- Fatal error: Objects used as arrays in post/pre increment/decrement must return values by reference in /archive/error.php on line 14 -- Edit bug report at http://bugs.php.net/?id=38049&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=38049&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=38049&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=38049&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=38049&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=38049&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=38049&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=38049&r=needscript Try newer version:http://bugs.php.net/fix.php?id=38049&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=38049&r=support Expected behavior:http://bugs.php.net/fix.php?id=38049&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=38049&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=38049&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=38049&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=38049&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=38049&r=dst IIS Stability:http://bugs.php.net/fix.php?id=38049&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=38049&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=38049&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=38049&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=38049&r=mysqlcfg
#38048 [Opn->Bgs]: $_SESSION cannot be changed after copying it into another array
ID: 38048 Updated by: [EMAIL PROTECTED] Reported By: seitenzahl at hotmail dot com -Status: Open +Status: Bogus Bug Type: Session related Operating System: Windows XP PHP Version: 5.1.4 New Comment: See bug #37926. Previous Comments: [2006-07-09 15:25:30] seitenzahl at hotmail dot com Fixed a typo in the summary. [2006-07-09 15:03:34] seitenzahl at hotmail dot com Description: After doing something like $oldsessiondata = $_SESSION; the changes to $_SESSION won't be committed to the session itself anymore. I don't think $_SESSION should lose its magic properties in this case. Reproduce code: --- Expected result: Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore [test] => foo ) After reload: Array ( [testbefore] => foobefore [test] => foo ) Array ( [testbefore] => foobefore [test] => foo ) Array ( [testbefore] => foobefore [test] => foo ) Actual result: -- Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore [test] => foo ) After reload: Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore ) Array ( [testbefore] => foobefore [test] => foo ) -- Edit this bug report at http://bugs.php.net/?id=38048&edit=1
#38050 [NEW]: preg_match_all segfault
From: [EMAIL PROTECTED] Operating system: debian linux PHP version: 5.1.4 PHP Bug Type: Reproducible crash Bug description: preg_match_all segfault Description: preg_match_all segfaults on some text samples with the following pattern: #]+)(?:"[^"]*"|'[^']*'|[^'">])*?\bhref\s?=\s?"([^"]+)"(?:"[^"]*"|'[^']*\'|[^'">])*?>((?:.(?!))*.?)#ism Pastebin code includes an example text sample. Reproduced on i386 linux 5.1.4 built from source but NOT a mac ppc build with the same compile flags, or on 4.3.10. Reproduce code: --- http://pastebin.com/743927 -- Edit bug report at http://bugs.php.net/?id=38050&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=38050&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=38050&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=38050&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=38050&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=38050&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=38050&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=38050&r=needscript Try newer version:http://bugs.php.net/fix.php?id=38050&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=38050&r=support Expected behavior:http://bugs.php.net/fix.php?id=38050&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=38050&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=38050&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=38050&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=38050&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=38050&r=dst IIS Stability:http://bugs.php.net/fix.php?id=38050&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=38050&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=38050&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=38050&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=38050&r=mysqlcfg
#38050 [Opn->Fbk]: preg_match_all segfault
ID: 38050 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Open +Status: Feedback Bug Type: Reproducible crash Operating System: debian linux PHP Version: 5.1.4 New Comment: Unfortunately pastebin.com is down atm. Please provide short but complete reproduce script here. Previous Comments: [2006-07-09 19:32:54] [EMAIL PROTECTED] Description: preg_match_all segfaults on some text samples with the following pattern: #]+)(?:"[^"]*"|'[^']*'|[^'">])*?\bhref\s?=\s?"([^"]+)"(?:"[^"]*"|'[^']*\'|[^'">])*?>((?:.(?!))*.?)#ism Pastebin code includes an example text sample. Reproduced on i386 linux 5.1.4 built from source but NOT a mac ppc build with the same compile flags, or on 4.3.10. Reproduce code: --- http://pastebin.com/743927 -- Edit this bug report at http://bugs.php.net/?id=38050&edit=1
#38049 [Opn->Asn]: A problem with values returned by ArrayAccess::offsetGet()
ID: 38049 Updated by: [EMAIL PROTECTED] Reported By: vma1 at abv dot bg -Status: Open +Status: Assigned Bug Type: Arrays related Operating System: Linux PHP Version: 5CVS-2006-07-09 (snap) -Assigned To: +Assigned To: bjori New Comment: Yeah, you're right it works fine in 5.1.4, but new arginfo causes this in 5.2. Hannes, are you sure arginfo for array_key_exists() is correct? I don't see any reasons to use references there, though. This patch fixes it for me: Index: ext/standard/basic_functions.c === RCS file: /repository/php-src/ext/standard/basic_functions.c,v retrieving revision 1.725.2.31.2.15 diff -u -p -d -r1.725.2.31.2.15 basic_functions.c --- ext/standard/basic_functions.c 2 Jul 2006 00:11:05 - 1.725.2.31.2.15 +++ ext/standard/basic_functions.c 9 Jul 2006 19:51:24 - @@ -655,9 +655,9 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_array_map ZEND_END_ARG_INFO() static -ZEND_BEGIN_ARG_INFO(arginfo_array_key_exists, ZEND_SEND_PREFER_REF) - ZEND_ARG_INFO(ZEND_SEND_PREFER_REF, key) - ZEND_ARG_INFO(ZEND_SEND_PREFER_REF, search) +ZEND_BEGIN_ARG_INFO(arginfo_array_key_exists, 0) + ZEND_ARG_INFO(0, key) + ZEND_ARG_INFO(0, search) ZEND_END_ARG_INFO() static Previous Comments: [2006-07-09 16:43:06] vma1 at abv dot bg Description: Values returned by ArrayAccess::offsetGet() cannot be used as a search key in a call to array_key_exists(). It looks like for some reason the scripting engine requires that the first argument of array_key_exists() is writable, which conflicts with the documented prototype of array_key_exists(). The sample code works fine with PHP 5.1.4 so it is a problem introduced in PHP 5.2. Reproduce code: --- Expected result: The program should terminate with no output at all. Actual result: -- Fatal error: Objects used as arrays in post/pre increment/decrement must return values by reference in /archive/error.php on line 14 -- Edit this bug report at http://bugs.php.net/?id=38049&edit=1
#37806 [Asn->Csd]: weird behavior of object type and comparison
ID: 37806 Updated by: [EMAIL PROTECTED] Reported By: technophreak at gammae dot com -Status: Assigned +Status: Closed Bug Type: Scripting Engine problem -Operating System: Fedora Core 4 +Operating System: * -PHP Version: 5CVS-2006-06-06 +PHP Version: 5CVS-2006-06-09 Assigned To: helly New Comment: This bug has been fixed in CVS. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. Previous Comments: [2006-06-14 16:46:45] technophreak at gammae dot com Description: Works as expected in PHP 5.1.2 Tried on latest cvs: php5.2-200606141430 Reproduce code: --- Expected result: bool(true) bool(true) Actual result: -- bool(true) bool(false) -- Edit this bug report at http://bugs.php.net/?id=37806&edit=1
#37811 [Asn->Csd]: define not using toString on objects
ID: 37811 Updated by: [EMAIL PROTECTED] Reported By: php at trancer dot nl -Status: Assigned +Status: Closed Bug Type: Scripting Engine problem -Operating System: Any +Operating System: * -PHP Version: 5.1.4 +PHP Version: 5.1.* Assigned To: helly New Comment: This bug has been fixed in CVS. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. Previous Comments: [2006-06-15 00:27:15] php at trancer dot nl Description: PHP is using toString on most places to cast objects to string. However define is not doing this. This seems somewhat of an oddity as objects are casted in other functions aswell. Possible fix to this problem was provided by bjori: http://php.is/bugs/toString/define.call.toString.patch.txt Reproduce code: --- Expected result: It being properly defined using the toString function. Actual result: -- Warning: Constants may only evaluate to scalar values in test.php on line 15 -- Edit this bug report at http://bugs.php.net/?id=37811&edit=1
#37816 [Asn]: ReflectionProperty does not throw exception when accessing protected attribute
ID: 37816 Updated by: [EMAIL PROTECTED] -Summary: REflectionProperty does not throw exception when accessing protected attribute Reported By: pierrealain dot bourdil at free dot fr Status: Assigned Bug Type: Class/Object related -Operating System: gento +Operating System: * -PHP Version: 5.1.4 +PHP Version: 5.1.* Assigned To: helly New Comment: There is some disabled code here which would fix the issue without the need to bailout. [EMAIL PROTECTED] /usr/src/php-cvs $ php -r 'class T{protected $p=2;} $o=new T; $r=new ReflectionProperty($o,"p"); var_dump($r->getValue($o));' make: `sapi/cli/php' is up to date. Fatal error: Cannot use array returned from ReflectionException::__get('trace') in write context in Unknown on line 0 Previous Comments: [2006-06-19 11:20:45] [EMAIL PROTECTED] No need for huge reproduce scripts, you need only this: getValue($t)); ?> Marcus, you changed this: http://cvs.php.net/viewvc.cgi/php-src/ext/reflection/php_reflection.c?r1=1.185&r2=1.186 [2006-06-15 12:12:53] pierrealain dot bourdil at free dot fr bjori, the script is at http://pastebin.com/710566 best regards [2006-06-15 11:22:46] [EMAIL PROTECTED] Thank you for this bug report. To properly diagnose the problem, we need a short but complete example script to be able to reproduce this bug ourselves. A proper reproducing script starts with , is max. 10-20 lines long and does not require any external resources such as databases, etc. If possible, make the script source available online and provide an URL to it here. Try to avoid embedding huge scripts into the report. [2006-06-15 11:05:22] pierrealain dot bourdil at free dot fr Description: First , i hope to really submit a bug, at least i've done my best to check it. i've made a class that contains other class, with dynamic adding,removing possibilities, save,restaure from session, and which use __call,__get,__set method. Within __get method, i instanciate ReflectionProperty. When i access a protected property, using ReflectionProperty->getValue, i expect to catch an exception, but i don't. I can access this property. It works perfectly with ReflectionMethod, but no with ReflectionProperty. Reproduce code: --- $rp=new ReflectionProperty($myClass,value); try{ if ($rp->isStatic()) return $rp->getValue(null); else return $rp->getValue(self::$instance->aClasses[$myClass]); }catch( Exception $e){ echo $e->getMessage(); return null; } now a portion the class which contains property that i tri to access protected $pp; public function __construct(){ $this->pp="pp"; } Expected result: this is what i expect, but for method, Trying to invoke protected method test::testFunction from scope ReflectionMethod i think i would expect something like that Trying to access protected property test::pp from scope Reflectionproperty Actual result: -- __get : pp -- Edit this bug report at http://bugs.php.net/?id=37816&edit=1
#38050 [Com]: preg_match_all segfault
ID: 38050 Comment by: judas dot iscariote at gmail dot com Reported By: [EMAIL PROTECTED] Status: Feedback Bug Type: Reproducible crash Operating System: debian linux PHP Version: 5.1.4 New Comment: your test do not segfault here(Linux 64 bit current 5_2 CVS) Previous Comments: [2006-07-09 19:40:30] [EMAIL PROTECTED] Unfortunately pastebin.com is down atm. Please provide short but complete reproduce script here. [2006-07-09 19:32:54] [EMAIL PROTECTED] Description: preg_match_all segfaults on some text samples with the following pattern: #]+)(?:"[^"]*"|'[^']*'|[^'">])*?\bhref\s?=\s?"([^"]+)"(?:"[^"]*"|'[^']*\'|[^'">])*?>((?:.(?!))*.?)#ism Pastebin code includes an example text sample. Reproduced on i386 linux 5.1.4 built from source but NOT a mac ppc build with the same compile flags, or on 4.3.10. Reproduce code: --- http://pastebin.com/743927 -- Edit this bug report at http://bugs.php.net/?id=38050&edit=1
#37816 [Asn->Csd]: ReflectionProperty does not throw exception when accessing protected attribute
ID: 37816 Updated by: [EMAIL PROTECTED] Reported By: pierrealain dot bourdil at free dot fr -Status: Assigned +Status: Closed Bug Type: Class/Object related Operating System: * PHP Version: 5.1.* Assigned To: helly New Comment: This bug has been fixed in CVS. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. Previous Comments: [2006-07-09 23:27:52] [EMAIL PROTECTED] There is some disabled code here which would fix the issue without the need to bailout. [EMAIL PROTECTED] /usr/src/php-cvs $ php -r 'class T{protected $p=2;} $o=new T; $r=new ReflectionProperty($o,"p"); var_dump($r->getValue($o));' make: `sapi/cli/php' is up to date. Fatal error: Cannot use array returned from ReflectionException::__get('trace') in write context in Unknown on line 0 [2006-06-19 11:20:45] [EMAIL PROTECTED] No need for huge reproduce scripts, you need only this: getValue($t)); ?> Marcus, you changed this: http://cvs.php.net/viewvc.cgi/php-src/ext/reflection/php_reflection.c?r1=1.185&r2=1.186 [2006-06-15 12:12:53] pierrealain dot bourdil at free dot fr bjori, the script is at http://pastebin.com/710566 best regards [2006-06-15 11:22:46] [EMAIL PROTECTED] Thank you for this bug report. To properly diagnose the problem, we need a short but complete example script to be able to reproduce this bug ourselves. A proper reproducing script starts with , is max. 10-20 lines long and does not require any external resources such as databases, etc. If possible, make the script source available online and provide an URL to it here. Try to avoid embedding huge scripts into the report. [2006-06-15 11:05:22] pierrealain dot bourdil at free dot fr Description: First , i hope to really submit a bug, at least i've done my best to check it. i've made a class that contains other class, with dynamic adding,removing possibilities, save,restaure from session, and which use __call,__get,__set method. Within __get method, i instanciate ReflectionProperty. When i access a protected property, using ReflectionProperty->getValue, i expect to catch an exception, but i don't. I can access this property. It works perfectly with ReflectionMethod, but no with ReflectionProperty. Reproduce code: --- $rp=new ReflectionProperty($myClass,value); try{ if ($rp->isStatic()) return $rp->getValue(null); else return $rp->getValue(self::$instance->aClasses[$myClass]); }catch( Exception $e){ echo $e->getMessage(); return null; } now a portion the class which contains property that i tri to access protected $pp; public function __construct(){ $this->pp="pp"; } Expected result: this is what i expect, but for method, Trying to invoke protected method test::testFunction from scope ReflectionMethod i think i would expect something like that Trying to access protected property test::pp from scope Reflectionproperty Actual result: -- __get : pp -- Edit this bug report at http://bugs.php.net/?id=37816&edit=1
#38050 [Fbk->Opn]: preg_match_all segfault
ID: 38050 User updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Feedback +Status: Open Bug Type: Reproducible crash Operating System: debian linux PHP Version: 5.1.4 New Comment: Here it is at another paste site: http://rafb.net/paste/results/UPIlO785.txt I have many other bunches of text that also crash for that pattern. I'll try this one on 5.2 also Previous Comments: [2006-07-09 23:59:58] judas dot iscariote at gmail dot com your test do not segfault here(Linux 64 bit current 5_2 CVS) [2006-07-09 19:40:30] [EMAIL PROTECTED] Unfortunately pastebin.com is down atm. Please provide short but complete reproduce script here. [2006-07-09 19:32:54] [EMAIL PROTECTED] Description: preg_match_all segfaults on some text samples with the following pattern: #]+)(?:"[^"]*"|'[^']*'|[^'">])*?\bhref\s?=\s?"([^"]+)"(?:"[^"]*"|'[^']*\'|[^'">])*?>((?:.(?!))*.?)#ism Pastebin code includes an example text sample. Reproduced on i386 linux 5.1.4 built from source but NOT a mac ppc build with the same compile flags, or on 4.3.10. Reproduce code: --- http://pastebin.com/743927 -- Edit this bug report at http://bugs.php.net/?id=38050&edit=1
#37667 [Asn->Csd]: Object is not added into array returned by __get
ID: 37667 Updated by: [EMAIL PROTECTED] Reported By: alexander dot netkachev at gmail dot com -Status: Assigned +Status: Closed Bug Type: Class/Object related Operating System: * -PHP Version: 5.1.4 +PHP Version: 5.1.* Assigned To: helly New Comment: This bug has been fixed in CVS. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. Previous Comments: [2006-06-02 23:18:44] [EMAIL PROTECTED] Ok, i have aptach for this which will generate an error for this non working write access. [2006-06-02 22:50:59] [EMAIL PROTECTED] The engine sees the read to the array property as a write no matter whether it is a read or write operation. I think we should pass the correct mode and then in the get_property handler use the info to protect against writing to a returned array since reading it is pretty fine of course. [2006-06-02 07:27:52] alexander dot netkachev at gmail dot com BTW, I think about it more and now I'm not sure that the actual result should show two elements in the array. Actually, when the array is returned from the function, it is returned by value, not by reference. __get seems to be an exception for this - it returns a reference to array. E.g. property; } } $c = new Class1(); $d = & $c->getProperty(); $d[] = 1; var_dump($c); ?> shows empty array in the $c object. [2006-06-01 18:54:14] [EMAIL PROTECTED] Dmitry, could you plz take a look at it? [2006-06-01 14:05:19] alexander dot netkachev at gmail dot com Description: The following code inserts only second object into property array. Reproduce code: --- class Class1 { protected $property = array(); function __get($name) { return $this->property; } } class Class2 {} $r = new Class1(); $r->Property[] = new Class2(); $r->Property[] = new Class2(); var_dump($r); Expected result: object(Class1)#1 (1) { ["property:protected"]=> array(1) { [0]=> object(Class2)#2 (0) { } [0]=> object(Class2)#3 (0) { } } } Actual result: -- object(Class1)#1 (1) { ["property:protected"]=> array(1) { [0]=> object(Class2)#3 (0) { } } } -- Edit this bug report at http://bugs.php.net/?id=37667&edit=1
#37742 [Asn->Fbk]: first call to unset() fails with ArrayObjet on a multidimensionnal superglobal
ID: 37742 Updated by: [EMAIL PROTECTED] Reported By: eric dot daspet at survol dot net -Status: Assigned +Status: Feedback Bug Type: SPL related Operating System: MS Windows XP PHP Version: 5.1.4 Assigned To: helly New Comment: Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows: http://snaps.php.net/win32/php5.2-win32-latest.zip The $__GET if still present is most likely related to super global handling. Previous Comments: [2006-06-19 18:17:12] [EMAIL PROTECTED] Valgrind also reports several errors in this code: ==2182== Invalid read of size 4 ==2182==at 0x82151BC: _zval_ptr_dtor (zend_execute_API.c:393) ==2182==by 0x821E7D8: _zval_ptr_dtor_wrapper (zend_variables.c:175) ==2182==by 0x822818A: zend_hash_destroy (zend_hash.c:521) ==2182==by 0x821E9EC: _zval_dtor_func (zend_variables.c:43) ==2182==by 0x82151FD: _zval_ptr_dtor (zend_variables.h:35) ==2182==by 0x821E7D8: _zval_ptr_dtor_wrapper (zend_variables.c:175) ==2182==by 0x8227EA8: zend_hash_apply_deleter (zend_hash.c:576) ==2182==by 0x82280A6: zend_hash_graceful_reverse_destroy (zend_hash.c:642) ==2182==by 0x821760C: shutdown_executor (zend_execute_API.c:221) ==2182==by 0x821F5C6: zend_deactivate (zend.c:854) ==2182==by 0x81E6E94: php_request_shutdown (main.c:1300) ==2182==by 0x8288B65: main (cgi_main.c:1667) etc... [2006-06-08 13:10:53] eric dot daspet at survol dot net Well, sorry, I have put Actual Result and Expected result in the wrong order. [2006-06-08 12:45:28] eric dot daspet at survol dot net Description: When a multidimentional superglobal is used to feed ArrayObjet, the first unset of a sub-index is ignored. - it is ok with a "normal" array, I've seen this only with $_REQUEST and $_GET - it is ok with $_GET as a simple array (one dimension) - the second call to unset() succeed, either if is the exact same call or if I try to unset another index, only the first fails Reproduce code: --- array(2) { ["i"]=> string(1) "1" ["j"]=> string(1) "2" } } object(ArrayObject)#1 (1) { ["index"]=> array(1) { ["i"]=> string(1) "1" } } object(ArrayObject)#1 (1) { ["index"]=> array(0) { } } Actual result: -- object(ArrayObject)#1 (1) { ["index"]=> array(1) { ["j"]=> string(1) "1" } } object(ArrayObject)#1 (1) { ["index"]=> array(0) { } } object(ArrayObject)#1 (1) { ["index"]=> array(0) { } } -- Edit this bug report at http://bugs.php.net/?id=37742&edit=1
#38051 [NEW]: changing upload_max_filesize in php.ini has no effect
From: saurabh_barjatiya at daiict dot ac dot in Operating system: Fedora Core 5 PHP version: 5.1.4 PHP Bug Type: *Configuration Issues Bug description: changing upload_max_filesize in php.ini has no effect Description: I have changed following in php.ini, Still when I run phpinfo() I get upload_max_filesize as 2M while other two getchanged. upload_max_filesize 2000M post_max_size 2000M memory_limit 2000M I have also tried creating php.ini in same directory as script with above settings. I have also tried creating .htaccess with php_value upload_max_filesize 2000M Still all scrips return 2M even with ini_get. Please check or tell how to change upload_max_filesize Reproduce code: --- Expected result: 2000M Actual result: -- 2M -- Edit bug report at http://bugs.php.net/?id=38051&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=38051&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=38051&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=38051&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=38051&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=38051&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=38051&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=38051&r=needscript Try newer version:http://bugs.php.net/fix.php?id=38051&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=38051&r=support Expected behavior:http://bugs.php.net/fix.php?id=38051&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=38051&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=38051&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=38051&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=38051&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=38051&r=dst IIS Stability:http://bugs.php.net/fix.php?id=38051&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=38051&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=38051&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=38051&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=38051&r=mysqlcfg
#38052 [NEW]: parse_ini_file() - escaping double quotes is impossible
From: alex at thresholdstate dot com Operating system: PHP version: 4.4.2 PHP Bug Type: Unknown/Other Function Bug description: parse_ini_file() - escaping double quotes is impossible Description: It appears there's no way a value in a .INI file can contain a double quote character. Backslash escaping is unsupported. If some other escaping method is available, the doc page doesn't mention it. Example is taken from http://www.php.net/manual/en/function.parse-ini-file.php#18216, posted in January 2002. C-style backslash escaping probably can't be supported due to Windows paths. Other escaping methods might be feasible: SQL-style doubled quote characters, for example. Reproduce code: --- var_dump(parse_ini_file("example.ini")); ; ; Example Configuration File ; [category] title = "Best Scripting Language" desc = "See http://www.php.net/\";>PHP!" Expected result: array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://www.php.net/";>PHP!" } Actual result: -- PHP Warning: Error parsing a.ini on line 6 in Command line code on line 1 array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://bugs.php.net/?id=38052&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=38052&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=38052&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=38052&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=38052&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=38052&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=38052&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=38052&r=needscript Try newer version:http://bugs.php.net/fix.php?id=38052&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=38052&r=support Expected behavior:http://bugs.php.net/fix.php?id=38052&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=38052&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=38052&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=38052&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=38052&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=38052&r=dst IIS Stability:http://bugs.php.net/fix.php?id=38052&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=38052&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=38052&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=38052&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=38052&r=mysqlcfg
#37742 [Fbk]: first call to unset() fails with ArrayObjet on a multidimensionnal superglobal
ID: 37742 Updated by: [EMAIL PROTECTED] Reported By: eric dot daspet at survol dot net Status: Feedback Bug Type: SPL related Operating System: MS Windows XP PHP Version: 5.1.4 Assigned To: helly New Comment: At least i get the expected result using the following: [EMAIL PROTECTED] /usr/src/PHP_5_2 $ php -r '$ao = new ArrayObject(array("index"=>array("i"=>42))); unset($ao["index"]["i"]); var_dump($ao);' make: `sapi/cli/php' is up to date. object(ArrayObject)#1 (1) { ["index"]=> array(0) { } } Previous Comments: [2006-07-10 01:01:10] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows: http://snaps.php.net/win32/php5.2-win32-latest.zip The $__GET if still present is most likely related to super global handling. [2006-06-19 18:17:12] [EMAIL PROTECTED] Valgrind also reports several errors in this code: ==2182== Invalid read of size 4 ==2182==at 0x82151BC: _zval_ptr_dtor (zend_execute_API.c:393) ==2182==by 0x821E7D8: _zval_ptr_dtor_wrapper (zend_variables.c:175) ==2182==by 0x822818A: zend_hash_destroy (zend_hash.c:521) ==2182==by 0x821E9EC: _zval_dtor_func (zend_variables.c:43) ==2182==by 0x82151FD: _zval_ptr_dtor (zend_variables.h:35) ==2182==by 0x821E7D8: _zval_ptr_dtor_wrapper (zend_variables.c:175) ==2182==by 0x8227EA8: zend_hash_apply_deleter (zend_hash.c:576) ==2182==by 0x82280A6: zend_hash_graceful_reverse_destroy (zend_hash.c:642) ==2182==by 0x821760C: shutdown_executor (zend_execute_API.c:221) ==2182==by 0x821F5C6: zend_deactivate (zend.c:854) ==2182==by 0x81E6E94: php_request_shutdown (main.c:1300) ==2182==by 0x8288B65: main (cgi_main.c:1667) etc... [2006-06-08 13:10:53] eric dot daspet at survol dot net Well, sorry, I have put Actual Result and Expected result in the wrong order. [2006-06-08 12:45:28] eric dot daspet at survol dot net Description: When a multidimentional superglobal is used to feed ArrayObjet, the first unset of a sub-index is ignored. - it is ok with a "normal" array, I've seen this only with $_REQUEST and $_GET - it is ok with $_GET as a simple array (one dimension) - the second call to unset() succeed, either if is the exact same call or if I try to unset another index, only the first fails Reproduce code: --- array(2) { ["i"]=> string(1) "1" ["j"]=> string(1) "2" } } object(ArrayObject)#1 (1) { ["index"]=> array(1) { ["i"]=> string(1) "1" } } object(ArrayObject)#1 (1) { ["index"]=> array(0) { } } Actual result: -- object(ArrayObject)#1 (1) { ["index"]=> array(1) { ["j"]=> string(1) "1" } } object(ArrayObject)#1 (1) { ["index"]=> array(0) { } } object(ArrayObject)#1 (1) { ["index"]=> array(0) { } } -- Edit this bug report at http://bugs.php.net/?id=37742&edit=1
#38052 [Com]: parse_ini_file() - escaping double quotes is impossible
ID: 38052 Comment by: judas dot iscariote at gmail dot com Reported By: alex at thresholdstate dot com Status: Open Bug Type:Unknown/Other Function PHP Version: 4.4.2 New Comment: IT works perfectly fine with a current version of PHP ( in my case 5_2 CVS), so you better try PHP5, you should be using PHP4 anyway.. ps: it is reproducible in current PHP 4_4 CVS, but Im not sure if this is gonna be fixed (if a bug), wait for official answer. Previous Comments: [2006-07-10 01:12:36] alex at thresholdstate dot com Description: It appears there's no way a value in a .INI file can contain a double quote character. Backslash escaping is unsupported. If some other escaping method is available, the doc page doesn't mention it. Example is taken from http://www.php.net/manual/en/function.parse-ini-file.php#18216, posted in January 2002. C-style backslash escaping probably can't be supported due to Windows paths. Other escaping methods might be feasible: SQL-style doubled quote characters, for example. Reproduce code: --- var_dump(parse_ini_file("example.ini")); ; ; Example Configuration File ; [category] title = "Best Scripting Language" desc = "See http://www.php.net/\";>PHP!" Expected result: array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://www.php.net/";>PHP!" } Actual result: -- PHP Warning: Error parsing a.ini on line 6 in Command line code on line 1 array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://bugs.php.net/?id=38052&edit=1
#38052 [Opn]: parse_ini_file() - escaping double quotes is impossible
ID: 38052 User updated by: alex at thresholdstate dot com Reported By: alex at thresholdstate dot com Status: Open Bug Type:Unknown/Other Function PHP Version: 4.4.2 New Comment: The latest PHP5 I have access to is 5.0.4, and it fails there. Previous Comments: [2006-07-10 01:43:14] judas dot iscariote at gmail dot com IT works perfectly fine with a current version of PHP ( in my case 5_2 CVS), so you better try PHP5, you should be using PHP4 anyway.. ps: it is reproducible in current PHP 4_4 CVS, but Im not sure if this is gonna be fixed (if a bug), wait for official answer. [2006-07-10 01:12:36] alex at thresholdstate dot com Description: It appears there's no way a value in a .INI file can contain a double quote character. Backslash escaping is unsupported. If some other escaping method is available, the doc page doesn't mention it. Example is taken from http://www.php.net/manual/en/function.parse-ini-file.php#18216, posted in January 2002. C-style backslash escaping probably can't be supported due to Windows paths. Other escaping methods might be feasible: SQL-style doubled quote characters, for example. Reproduce code: --- var_dump(parse_ini_file("example.ini")); ; ; Example Configuration File ; [category] title = "Best Scripting Language" desc = "See http://www.php.net/\";>PHP!" Expected result: array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://www.php.net/";>PHP!" } Actual result: -- PHP Warning: Error parsing a.ini on line 6 in Command line code on line 1 array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://bugs.php.net/?id=38052&edit=1
#38052 [Com]: parse_ini_file() - escaping double quotes is impossible
ID: 38052 Comment by: judas dot iscariote at gmail dot com Reported By: alex at thresholdstate dot com Status: Open Bug Type:Unknown/Other Function PHP Version: 4.4.2 New Comment: Well..with current 5_2 version I get: array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(42) "See http://www.php.net/\>PHP!" } although this not what you expect, is much better, since you can use str_replace() to replace backslashes with double quotes if you want. Previous Comments: [2006-07-10 01:59:53] alex at thresholdstate dot com The latest PHP5 I have access to is 5.0.4, and it fails there. [2006-07-10 01:43:14] judas dot iscariote at gmail dot com IT works perfectly fine with a current version of PHP ( in my case 5_2 CVS), so you better try PHP5, you should be using PHP4 anyway.. ps: it is reproducible in current PHP 4_4 CVS, but Im not sure if this is gonna be fixed (if a bug), wait for official answer. [2006-07-10 01:12:36] alex at thresholdstate dot com Description: It appears there's no way a value in a .INI file can contain a double quote character. Backslash escaping is unsupported. If some other escaping method is available, the doc page doesn't mention it. Example is taken from http://www.php.net/manual/en/function.parse-ini-file.php#18216, posted in January 2002. C-style backslash escaping probably can't be supported due to Windows paths. Other escaping methods might be feasible: SQL-style doubled quote characters, for example. Reproduce code: --- var_dump(parse_ini_file("example.ini")); ; ; Example Configuration File ; [category] title = "Best Scripting Language" desc = "See http://www.php.net/\";>PHP!" Expected result: array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://www.php.net/";>PHP!" } Actual result: -- PHP Warning: Error parsing a.ini on line 6 in Command line code on line 1 array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://bugs.php.net/?id=38052&edit=1
#38052 [Opn]: parse_ini_file() - escaping double quotes is impossible
ID: 38052 User updated by: alex at thresholdstate dot com Reported By: alex at thresholdstate dot com Status: Open Bug Type:Unknown/Other Function PHP Version: 4.4.2 New Comment: Not sure I'd describe it as "much better", since it clashes with windows paths. Consider: path = "\"C:\Program Files\blah\"" 5.2 would presumably render this as '\C:\Program Files\blah\\', which loses the distinction between "escaped" quotes and plain backslashes. Previous Comments: [2006-07-10 04:09:13] judas dot iscariote at gmail dot com Well..with current 5_2 version I get: array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(42) "See http://www.php.net/\>PHP!" } although this not what you expect, is much better, since you can use str_replace() to replace backslashes with double quotes if you want. [2006-07-10 01:59:53] alex at thresholdstate dot com The latest PHP5 I have access to is 5.0.4, and it fails there. [2006-07-10 01:43:14] judas dot iscariote at gmail dot com IT works perfectly fine with a current version of PHP ( in my case 5_2 CVS), so you better try PHP5, you should be using PHP4 anyway.. ps: it is reproducible in current PHP 4_4 CVS, but Im not sure if this is gonna be fixed (if a bug), wait for official answer. [2006-07-10 01:12:36] alex at thresholdstate dot com Description: It appears there's no way a value in a .INI file can contain a double quote character. Backslash escaping is unsupported. If some other escaping method is available, the doc page doesn't mention it. Example is taken from http://www.php.net/manual/en/function.parse-ini-file.php#18216, posted in January 2002. C-style backslash escaping probably can't be supported due to Windows paths. Other escaping methods might be feasible: SQL-style doubled quote characters, for example. Reproduce code: --- var_dump(parse_ini_file("example.ini")); ; ; Example Configuration File ; [category] title = "Best Scripting Language" desc = "See http://www.php.net/\";>PHP!" Expected result: array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://www.php.net/";>PHP!" } Actual result: -- PHP Warning: Error parsing a.ini on line 6 in Command line code on line 1 array(2) { ["title"]=> string(23) "Best Scripting Language" ["desc"]=> string(13) "See http://bugs.php.net/?id=38052&edit=1
#38030 [Fbk->Csd]: make install fails - dlname not found ....libphp5.la
ID: 38030 User updated by: john dot enevoldson at pulsen dot se Reported By: john dot enevoldson at pulsen dot se -Status: Feedback +Status: Closed Bug Type: Compile Failure Operating System: sles 9.3 on ibm zseries PHP Version: 5.1.4 New Comment: Hi, Problem seemed to be with the libxml2 libraries - installation of this package seemed to put files in the incorrect location. Moiving these and then re-installing solved the problem. Regards, John. Previous Comments: [2006-07-07 12:22:32] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows: http://snaps.php.net/win32/php5.2-win32-latest.zip Btw, what was your configure line? [2006-07-07 07:43:28] john dot enevoldson at pulsen dot se Looking through the make output again we do see a warning: *** Warning: inter-library dependencies are not known to be supported. *** All declared inter-library dependencies are being dropped. *** Warning: libtool could not satisfy all declared inter-library *** dependencies of module libphp5. Therefore, libtool will create *** a static module, that should work as long as the dlopening *** application is linked with the -dlopen flag. This probably expalins why the .so is not being built though we cannot see what dependency is incorrect. [2006-07-07 07:11:08] john dot enevoldson at pulsen dot se Description: configure and make works ok but when running make install we see: Installing PHP SAPI module: apache2handler /usr/share/apache2/build/instdso.sh SH_LIBTOOL='/usr/share/apache2/build/libtool' libphp5.la /usr/lib64/apache2 /usr/share/apache2/build/libtool --mode=install cp libphp5.la /usr/lib64/apache2/ cp .libs/libphp5.lai /usr/lib64/apache2/libphp5.la cp .libs/libphp5.a /usr/lib64/apache2/libphp5.a ranlib /usr/lib64/apache2/libphp5.a chmod 644 /usr/lib64/apache2/libphp5.a libtool: install: warning: remember to run `libtool --finish /home/tje/php/php-5.1.4/libs' Warning! dlname not found in /usr/lib64/apache2/libphp5.la. Assuming installing a .so rather than a libtool archive. chmod 755 /usr/lib64/apache2/libphp5.so chmod: cannot access `/usr/lib64/apache2/libphp5.so': No such file or directory apxs:Error: Command failed with rc=65536 . make: *** [install-sapi] Error 1 libphp5.la is actually in /usr/lib64/apache2/ so we cannot understand why the error is being thrown. Reproduce code: --- sudo make install Expected result: Build complete Actual result: -- See output above. -- Edit this bug report at http://bugs.php.net/?id=38030&edit=1
#38053 [NEW]: PHP not work with apache 2.2.2
From: onur dot yerlikaya at linux dot org dot tr Operating system: Windows XP PHP version: 5.1.4 PHP Bug Type: Apache2 related Bug description: PHP not work with apache 2.2.2 Description: PHP not work with apache 2.2.2 Expected result: When i install Apache 2.2.2 with PHP like a module. it did not work. -- Edit bug report at http://bugs.php.net/?id=38053&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=38053&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=38053&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=38053&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=38053&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=38053&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=38053&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=38053&r=needscript Try newer version:http://bugs.php.net/fix.php?id=38053&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=38053&r=support Expected behavior:http://bugs.php.net/fix.php?id=38053&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=38053&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=38053&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=38053&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=38053&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=38053&r=dst IIS Stability:http://bugs.php.net/fix.php?id=38053&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=38053&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=38053&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=38053&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=38053&r=mysqlcfg
#33140 [NoF->Opn]: Recursive 'mkdir' doesn't work when path includes a non-existent root folder
ID: 33140 Updated by: [EMAIL PROTECTED] Reported By: cbelin at free dot fr -Status: No Feedback +Status: Open Bug Type: Directory function related Operating System: Win32 PHP Version: 5CVS-2005-05-26 Previous Comments: [2006-07-09 11:14:14] zefredz at gmail dot com It still does not work with '/' and recursive mode under windows : Warning: mkdir(): No such file or directory in C:\var\downloads\php5.2-win32-latest\test_mkdir.php on line 2 and Using '\' works : and work fine. There is no problem in non-recursive mode and the following works fine : $path = 'tata/toto/tutu/titi'; $parts = explode( '/', $path ); $trail = ''; foreach( $parts as $part ) { $trail .= $part . '/'; if ( file_exists( $trail ) ) { return false; } else { if ( is_dir( dirname( $trail ) ) ) { mkdir ( $trail, 0777 ); } } } [2006-06-28 01:00:00] 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". [2006-06-20 16:16:11] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows: http://snaps.php.net/win32/php5.2-win32-latest.zip [2006-03-29 20:07:32] ksteinhoff at gmail dot com I see this bug on Mac OS X 10.4.5 with PHP 5.1.2. I've also noticed what I assume is a related problem with creating directories in the current directory. For example, if I run the script below in /tmp, the second (and fifth) mkdir will fail. [2006-03-15 09:02:51] zefredz at gmail dot com I have made a little test and I figure out taht giving the full path is not required but that you have to use the backslashes instead of the slashes to make the recursive mkdir work : mkdir ('toto/tutu/titi', 0777, true); # FAILS mkdir ('toto\tutu\titi', 0777, true); # WORKS But when not in recursive mode, mkdir works with either slashes or backslashes. 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/33140 -- Edit this bug report at http://bugs.php.net/?id=33140&edit=1
#38053 [Opn]: PHP not work with apache 2.2.2
ID: 38053 User updated by: onur dot yerlikaya at linux dot org dot tr Reported By: onur dot yerlikaya at linux dot org dot tr Status: Open Bug Type: Apache2 related Operating System: Windows XP PHP Version: 5.1.4 New Comment: sorry it does NOT work. Previous Comments: [2006-07-10 06:17:20] onur dot yerlikaya at linux dot org dot tr Description: PHP not work with apache 2.2.2 Expected result: When i install Apache 2.2.2 with PHP like a module. it did not work. -- Edit this bug report at http://bugs.php.net/?id=38053&edit=1
#38054 [NEW]: PDO with db2 returning column names but not data
From: john dot enevoldson at pulsen dot se Operating system: SLES 9.3 64 bit PHP version: 5.1.4 PHP Bug Type: PDO related Bug description: PDO with db2 returning column names but not data Description: We are seeing column names returned but no associated data when issuing selects against a db2 data source using pdo:odbc (bulit with the ibm-db2 option). DB2 trace shows that data is being returned to the application correctly but the application does not seem to pick it up. Reproduce code: --- $dbh = new PDO('odbc:zdb2lt01' , 'db2tst01', 'adg680'); foreach ($dbh->query('SELECT * from PXX.XPRMFOK') as $row) { print_r($row); } Expected result: A array for each row in the table showing column name and associated data. Actual result: -- A array for each row in the table showing column name but associated data is empty. -- Edit bug report at http://bugs.php.net/?id=38054&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=38054&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=38054&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=38054&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=38054&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=38054&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=38054&r=needtrace Need Reproduce Script:http://bugs.php.net/fix.php?id=38054&r=needscript Try newer version:http://bugs.php.net/fix.php?id=38054&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=38054&r=support Expected behavior:http://bugs.php.net/fix.php?id=38054&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=38054&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=38054&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=38054&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=38054&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=38054&r=dst IIS Stability:http://bugs.php.net/fix.php?id=38054&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=38054&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=38054&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=38054&r=nozend MySQL Configuration Error:http://bugs.php.net/fix.php?id=38054&r=mysqlcfg
#38053 [Com]: PHP not work with apache 2.2.2
ID: 38053 Comment by: unur dot yerlikaya at linux dot org dot tr Reported By: onur dot yerlikaya at linux dot org dot tr Status: Open Bug Type: Apache2 related Operating System: Windows XP PHP Version: 5.1.4 New Comment: yea, just an update - it still does NOT work. Previous Comments: [2006-07-10 06:28:51] onur dot yerlikaya at linux dot org dot tr sorry it does NOT work. [2006-07-10 06:17:20] onur dot yerlikaya at linux dot org dot tr Description: PHP not work with apache 2.2.2 Expected result: When i install Apache 2.2.2 with PHP like a module. it did not work. -- Edit this bug report at http://bugs.php.net/?id=38053&edit=1