ID: 35388 User updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Feedback +Status: Open Bug Type: MySQLi related Operating System: Windows XP Home SP2 PHP Version: 5.1.0 New Comment:
I've tested this on Linux (SuSe 9.3)/PHP 5.0.5/MySQL 4.1/MySQL 5.0/Apache 2.0.55 and the reproduce code works fine. This suggests that it is a Windows problem. I am testing on Windows XP/PHP 5.1/MySQL 5.0/Apache 2.0.55. So, I have installed GDB onto my Windows machine to get a backtrace: gdb (gdb) target exec C:\php\php.exe (gdb) run test.php Starting program: C:\php\.php.exe test.php warning: 3744:2900 Initializing all chains with next layer = 1002 A new command prompt appears with the test.php file output. This includes the standard HTML headers but also shows the PHP warning that should be displayed: Warning: mysqli::mysqli(): (28000/1045): Access denied for user 'root'@'localhost (using password: YES) in test.php on line 7 However, the gdb window then shows: Program received signal SIGSEGV, Segmentation fault. Type <return> to continue or q <return> to quit. I hit return and get this output: 0x77ea3c00 in ?? () Then running the bt command: (gdb) bt #0 0x77ea3c00 in ?? () #1 0x0012faa0 in ?? () #2 0x77ef360b in ?? () #3 0x77de69bc in ?? () #4 0x77de697d in ?? () #5 0x77de6950 in ?? () #6 0x100dce85 in ?? () #7 0x8528488b in ?? () Cannot access memory at address 0x424448b The Apache error log shows "Parent: Child process exited with status 3221225477" Previous Comments: ------------------------------------------------------------------------ [2005-11-25 17:25:31] [EMAIL PROTECTED] I've no idea, really. I thought you should know it better, 'cause it's you're running windows. Try on another host, do some research, maybe you'll be able to give some more information about it. ------------------------------------------------------------------------ [2005-11-25 17:00:06] [EMAIL PROTECTED] Since I'm using Windows, I couldn't find a way to run the backtrace. I do get a Windows error, and clicking the Debug option tells me that "An exception 'unhandled Win32 Exception' has occurred in Apache.exe. However, no debuggers are registered that can debug this exception. Unable to JIT debug.". Is there a way I can get the information you need on Windows? ------------------------------------------------------------------------ [2005-11-25 12:20:45] [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 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. Works fine here. ------------------------------------------------------------------------ [2005-11-25 12:15:02] [EMAIL PROTECTED] Description: ------------ If you create a new mysqli object using incorrect login details, Apache crashes. Version info output from mysql_* and mysqli_* functions: mysql Client Encoding: latin1 Client Version: 5.0.16 Protocol Version: 10 Server Version: 5.0.16-nt mysqli Client Encoding: latin1 Client Version: 4.1.7 Protocol Version: 10 Server Version: 5.0.16-nt Reproduce code: --------------- Ensure username and/or password are incorrect: <?php $mysqli = new mysqli('localhost', 'root', 'root'); ?> Expected result: ---------------- Incorrect login details error Actual result: -------------- Apache crashes. Windows error reporting shows: szAppName : Apache.exe szAppVer : 2.0.55.0 szModName : php5ts.dll szModVer : 5.1.0.0 offset : 00008be4 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=35388&edit=1