Edit report at http://bugs.php.net/bug.php?id=53070&edit=1
ID: 53070 User updated by: iwanluijks at gmail dot com Reported by: iwanluijks at gmail dot com Summary: Calling enchant_broker_get_dict_path before set_path crashes php -Status: Feedback +Status: Open Type: Bug Package: *Spelling functions Operating System: Windows 7 Home Premium PHP Version: 5.3.3 Block user comment: N New Comment: Replaced the file as you requested, restarted Apache and running the file from CLI and Apache still crashed PHP. I was able to generate the following backtrace, seems to be different from the others (run 3 others before it to compare all and this is the only different one, as expected): Report for php__PID__3232__Date__10_14_2010__Time_11_37_32PM__970__Second_Chance_Exception_C0000005.dmp Report for php__PID__3232__Date__10_14_2010__Time_11_37_32PM__970__Second_Chance_Exception_C0000005.dmp Type of Analysis Performed Crash Analysis Machine Name IWANLUIJKS-PC Operating System Unexpected Number Of Processors 4 Process ID 3232 Process Image C:\PHP\php.exe System Up-Time 04:27:38 Process Up-Time 00:00:01 Thread 0 - System ID 4164 Entry point php+2dda Create time 14-10-2010 23:37:32 Time spent in user mode 0 Days 0:0:0.546 Time spent in kernel mode 0 Days 0:0:0.78 Function Arg 1 Arg 2 Arg 3 Source php_enchant!get_module+6f0 00000001 695f0001 00000000 0x00c0fb30 695f0001 00000000 6e20736e PHP_ENCHANT!GET_MODULE+6F0WARNING - DebugDiag was not able to locate debug symbols for php_enchant.dll, so the information below may be incomplete. In php__PID__3232__Date__10_14_2010__Time_11_37_32PM__970__Second_Chance_Exception_C0000005.dmp the assembly instruction at php_enchant!get_module+6f0 in C:\PHP\ext\php_enchant.dll from The PHP Group has caused an access violation exception (0xC0000005) when trying to read from memory location 0x00000000 on thread 0 Module Information Image Name: C:\PHP\ext\php_enchant.dll Symbol Type: Export Base address: 0x00d50000 Time Stamp: Wed Jul 21 21:35:15 2010 Checksum: 0x00012284 Comments: Thanks to Pierre-Alain Joye, Ilia Alshanetsky COM DLL: False Company Name: The PHP Group ISAPIExtension: False File Description: enchant ISAPIFilter: False File Version: 5.3.3 Managed DLL: False Internal Name: ENCHANT extension VB DLL: False Legal Copyright: Copyright © 1997-2009 The PHP Group Loaded Image Name: php_enchant.dll Legal Trademarks: PHP Mapped Image Name: Original filename: php_enchant.dll Module name: php_enchant Private Build: Single Threaded: False Product Name: PHP Module Size: 32,00 KBytes Product Version: 5.3.3 Symbol File Name: php_enchant.dll Special Build: & Previous Comments: ------------------------------------------------------------------------ [2010-10-14 23:32:40] paj...@php.net Can you replace the libenchant.dll with libenchant_52841.zip, restart apache and try again please? http://windows.php.net/downloads/qa/test/libenchant_52841.zip Also please try using the CLI as well. ------------------------------------------------------------------------ [2010-10-14 23:15:30] fel...@php.net I can't reproduce it on linux. ------------------------------------------------------------------------ [2010-10-14 22:53:13] iwanluijks at gmail dot com Description: ------------ Whenever I try to call (the undocumented function) enchant_broker_get_dict_path before enchant_broker_set_dict_path my PHP instance crashes. My php.ini contains the following entries: enchant support enabled Version 1.1.0 Libenchant Version 1.5.0 or later Revision $Revision: 298870 $ ispell Ispell Provider C:\PHP\libenchant_ispell.dll myspell Myspell Provider C:\PHP\libenchant_myspell.dll Test script: --------------- <?php $broker = enchant_broker_init(); enchant_broker_get_dict_path($broker, ENCHANT_ISPELL); ?> Expected result: ---------------- Either false because no dictionary path is set yet or an empty string or some kind. Actual result: -------------- Report for php__PID__892__Date__10_14_2010__Time_10_40_17PM__834__Second_Chance_Exception_C0000005.dmp Report for php__PID__892__Date__10_14_2010__Time_10_40_17PM__834__Second_Chance_Exception_C0000005.dmp Type of Analysis Performed Crash Analysis Machine Name IWANLUIJKS-PC Operating System Unexpected Number Of Processors 4 Process ID 892 Process Image C:\PHP\php.exe System Up-Time 03:30:23 Process Up-Time 00:00:31 Thread 0 - System ID 5160 Entry point php+2dda Create time 14-10-2010 22:39:46 Time spent in user mode 0 Days 0:0:0.717 Time spent in kernel mode 0 Days 0:0:0.93 Function Arg 1 Arg 2 Arg 3 Source php_enchant!get_module+6f0 00000002 027ce2b0 00000000 php5!execute+cdf 02800080 027cdc80 02800080 php5!execute+4c25 00c0ebe8 00c0fe9c 00c0fc84 php5!execute+1f0 00000000 00000000 00000000 PHP_ENCHANT!GET_MODULE+6F0WARNING - DebugDiag was not able to locate debug symbols for php_enchant.dll, so the information below may be incomplete. In php__PID__892__Date__10_14_2010__Time_10_40_17PM__834__Second_Chance_Exception_C0000005.dmp the assembly instruction at php_enchant!get_module+6f0 in C:\PHP\ext\php_enchant.dll from The PHP Group has caused an access violation exception (0xC0000005) when trying to read from memory location 0x00000000 on thread 0 Module Information Image Name: C:\PHP\ext\php_enchant.dll Symbol Type: Export Base address: 0x003d0000 Time Stamp: Wed Jul 21 21:35:15 2010 Checksum: 0x00012284 Comments: Thanks to Pierre-Alain Joye, Ilia Alshanetsky COM DLL: False Company Name: The PHP Group ISAPIExtension: False File Description: enchant ISAPIFilter: False File Version: 5.3.3 Managed DLL: False Internal Name: ENCHANT extension VB DLL: False Legal Copyright: Copyright © 1997-2009 The PHP Group Loaded Image Name: php_enchant.dll Legal Trademarks: PHP Mapped Image Name: Original filename: php_enchant.dll Module name: php_enchant Private Build: Single Threaded: False Product Name: PHP Module Size: 32,00 KBytes Product Version: 5.3.3 Symbol File Name: php_enchant.dll Special Build: & ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/bug.php?id=53070&edit=1