From:             apolinux at hotmail dot com
Operating system: Windows XP
PHP version:      5.2.4
PHP Bug Type:     Reproducible crash
Bug description:  zend_mm_heap corrupted

Description:
------------
I'm working with WDDX extension, used to make RPC between two computers,
using classes to make wrapper. I have 3 basic scripts, one is the client,
other is the server and other contains the classes that contains the
scripts that interact with WDDX.
When I try to simulate the client and the server over the same machine, I
get the error zend_mm_heap corrupted in apache. When I ran the scripts  in
separate machines, it works OK.
I have PHP 5.2.4,  I had tried to run with PHP 5.2.3 but I got the same
error. I have 
Apache/2.2.4 (Win32) mod_autoindex_color PHP/5.2.4. I try to run a debug
with php, but I got it only with apache process.
the error in apache log is
[Sun Sep 30 11:20:52 2007] [notice] Child 3156: Starting thread to listen
on port 80.
zend_mm_heap corrupted
Error in my_thread_global_end(): 51 threads didn't exit
[Sun Sep 30 19:08:19 2007] [notice] Parent: child process exited with
status 1 -- Restarting.
[Sun Sep 30 19:08:38 2007] [notice] Apache/2.2.4 (Win32)
mod_autoindex_color PHP/5.2.4 configured -- resuming normal operations

Reproduce code:
---------------
        function creaPaquete($datos)
                {
                $packet_id  = wddx_packet_start("Llamada Remota WDDX");
                if (is_array($datos)) { //verVar($datos);
                        foreach($datos as $key => $data){
                                  //create a var whith the name of the content 
of $key
                                  $$key = $data;
                                  wddx_add_vars($packet_id,$key);
                                }
                        }
                else {
                        wddx_add_vars($packet_id, "datos");
                        }
                
                $paquete = wddx_packet_end($packet_id);// verVar($paquete);
                $paquete = urlencode($paquete);
                return $paquete;
                }

Expected result:
----------------
this function packs the data to send over the network using CURL. The code
is too large to include here, and I'm not have a web site permanently
connected.


Actual result:
--------------
Thread 50 - System ID 1844
Entry point   msvcr71!_endthreadex+31 
Create time   30/09/2007 11:18:18 a.m. 
Time spent in user mode   0 Days 0:0:0.281 
Time spent in kernel mode   0 Days 0:0:0.93 






Function     Arg 1     Arg 2     Arg 3   Source 
php5ts!zend_mm_shutdown+116f     01b35228     000000d8     00825c3b    
php5ts!efree+39     03793678     03798138     00829e17    
php5ts!zval_ptr_dtor+4b     03798114     037981f8     03797fa0    
php5ts!zend_hash_destroy+27     03797fb8     03798204     00825c13    
php5ts!zval_dtor_func+59     03797fa0     00000000     00829e17    
php5ts!zval_ptr_dtor+23     03798204     03798228     03797f30    
php5ts!zend_hash_destroy+27     00000000     00000000     00000000    




PHP5TS!ZEND_MM_SHUTDOWN+116FWARNING - DebugDiag was not able to locate
debug symbols for php5ts.dll, so the information below may be incomplete.



In
apache__PID__2872__Date__09_30_2007__Time_11_20_47AM__453__Second_Chance_Exception_C0000005.dmp
the assembly instruction at php5ts!zend_mm_shutdown+116f in
C:\xampp\apache\bin\php5ts.dll from The PHP Group has caused an access
violation exception (0xC0000005) when trying to read from memory location
0x00000000 on thread 50

Module Information 
Image Name: C:\xampp\apache\bin\php5ts.dll   Symbol Type:  Export 
Base address: 0x00790000   Time Stamp:  Thu Aug 30 06:06:12 2007  
Checksum: 0x00000000   Comments:   
COM DLL: False   Company Name:  The PHP Group 
ISAPIExtension: False   File Description:  PHP Script Interpreter 
ISAPIFilter: False   File Version:  5.2.4.4 
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:\xampp\apache\bin\php5ts.dll   Original filename: 
php5ts.dll 
Module name:  php5ts   Private Build:   
Single Threaded:  False   Product Name:  PHP Script Interpreter 
Module Size:  4,86 MBytes   Product Version:  5.2.4 
Symbol File Name:  php5ts.dll   Special Build:  & 





 Report for
apache__PID__2584__Date__09_30_2007__Time_10_51_08AM__93__Second_Chance_Exception_C0000005.dmp





-- 
Edit bug report at http://bugs.php.net/?id=42809&edit=1
-- 
Try a CVS snapshot (PHP 4.4): 
http://bugs.php.net/fix.php?id=42809&r=trysnapshot44
Try a CVS snapshot (PHP 5.2): 
http://bugs.php.net/fix.php?id=42809&r=trysnapshot52
Try a CVS snapshot (PHP 6.0): 
http://bugs.php.net/fix.php?id=42809&r=trysnapshot60
Fixed in CVS:                 http://bugs.php.net/fix.php?id=42809&r=fixedcvs
Fixed in release:             
http://bugs.php.net/fix.php?id=42809&r=alreadyfixed
Need backtrace:               http://bugs.php.net/fix.php?id=42809&r=needtrace
Need Reproduce Script:        http://bugs.php.net/fix.php?id=42809&r=needscript
Try newer version:            http://bugs.php.net/fix.php?id=42809&r=oldversion
Not developer issue:          http://bugs.php.net/fix.php?id=42809&r=support
Expected behavior:            http://bugs.php.net/fix.php?id=42809&r=notwrong
Not enough info:              
http://bugs.php.net/fix.php?id=42809&r=notenoughinfo
Submitted twice:              
http://bugs.php.net/fix.php?id=42809&r=submittedtwice
register_globals:             http://bugs.php.net/fix.php?id=42809&r=globals
PHP 3 support discontinued:   http://bugs.php.net/fix.php?id=42809&r=php3
Daylight Savings:             http://bugs.php.net/fix.php?id=42809&r=dst
IIS Stability:                http://bugs.php.net/fix.php?id=42809&r=isapi
Install GNU Sed:              http://bugs.php.net/fix.php?id=42809&r=gnused
Floating point limitations:   http://bugs.php.net/fix.php?id=42809&r=float
No Zend Extensions:           http://bugs.php.net/fix.php?id=42809&r=nozend
MySQL Configuration Error:    http://bugs.php.net/fix.php?id=42809&r=mysqlcfg

Reply via email to