|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2008-12-12 07:58 UTC] pdp2108 at gmail dot com
Description:
------------
I have an isolated test case that reliably generates a segmentation fault in php5ts.dll.
Here is the environment:
Windows XP, SP2, Single Athlon 64 3200+ CPU, 1 GB RAM
MySQL version 5.1.30 for Win32
Apache version 2.2.10 for Win32
PHP 5.2.8
PHP was installed with the .msi installer. The following extensions were added at installation: GD, mysql, mysqli and multi-byte string.
I have configured Apache & MySQL and have created some databases, which I can access through mysql and Navicat. I have used a simple phpinfo.php script to track down an incorrect libmysql.dll in my path and have eliminated that and have verified that the client version of libmysql is 5.1.30 in phpinfo.
Reproduce code:
---------------
<?php
mysql_connect('localhost', 'root', 'root');
print('Past mysql_connect');
?>
Expected result:
----------------
One expects to see the "Past mysql_connect" statement print out.
Actual result:
--------------
Thread 0 - System ID 4232
Entry point php!mainCRTStartup
Create time 12/12/2008 2:17:59 AM
Time spent in user mode 0 Days 0:0:0.0
Time spent in kernel mode 0 Days 0:0:0.31
Function Arg 1 Arg 2 Arg 3 Source
php5ts!zend_mm_search_large_block+fa 00f35230 00000048 0000001c
php5ts!_zend_mm_alloc_int+153 00000000 0000003f 1009ba69
php5ts!_emalloc+39 0000003f 0111c4c8 00f327a0
php5ts!_zend_hash_add_or_update+2d9 00f36148 0111c4e0 0000001c
php_mysql!php_mysql_do_connect+867 0111c460 0111c4c8 00000000
php_mysql!zif_mysql_connect+25 00000003 0111c4c8 00000000
php5ts!zend_do_fcall_common_helper_SPEC+7d9 00c0fbd0 00f327a0 0111be8c
php5ts!ZEND_DO_FCALL_SPEC_CONST_HANDLER+e5 00000000 00f327a0 00f327a0
php5ts!execute+1c5 0111be98 00f327a0 00000000
php5ts!zend_execute_scripts+107 00000008 00f327a0 00000000
php5ts!php_execute_script+20d 00c0fec8 00f327a0 0000000e
php!main+bca 00000003 00f33fd0 00f32d60
php!mainCRTStartup+e3 0000000e 00000000 7ffdf000
kernel32!BaseProcessStart+23 00402f72 00000000 00000000
PHP5TS!ZEND_MM_SEARCH_LARGE_BLOCK+FAIn php__PID__3284__Date__12_12_2008__Time_02_18_29AM__734__Second_Chance_Exception_C0000005.dmp the assembly instruction at php5ts!zend_mm_search_large_block+fa in C:\PHP\php5ts.dll from The PHP Group has caused an access violation exception (0xC0000005) when trying to read from memory location 0x00000014 on thread 0
Module Information
Image Name: C:\PHP\php5ts.dll Symbol Type: PDB
Base address: 0x10000000 Time Stamp: Mon Dec 08 14:31:08 2008
Checksum: 0x00000000 Comments:
COM DLL: False Company Name: The PHP Group
ISAPIExtension: False File Description: PHP Script Interpreter
ISAPIFilter: False File Version: 5.2.8.8
Managed DLL: False Internal Name: php5ts.dll
VB DLL: False Legal Copyright: Copyright ? 1997-2007 The PHP Group
Loaded Image Name: php5ts.dll Legal Trademarks: PHP
Mapped Image Name: C:\PHP\php5ts.dll Original filename: php5ts.dll
Module name: php5ts Private Build:
Single Threaded: False Product Name: PHP Script Interpreter
Module Size: 4.98 MBytes Product Version: 5.2.8
Symbol File Name: C:\PHP_Debug\php5ts.pdb Special Build: &
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 02:00:01 2025 UTC |
I have exactly the same problem, just my Apache server version is 2.2.11. just wanted to add that if I run the script using the cli (php.exe) : php -f dbtest.php it works perfectly. If I access the same file using the web server I get the access violation. The content of dbtest.php is: <?php $connection = mysql_connect("ponchs","root","At1fT43"); echo "$connection"; ?> I started with a clean installation of the three packages, everything else seems to be running fine