php hangs when extension does not exist
| Bug #30760 | php hangs when extension does not exist | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Submitted: | 2004-11-11 12:05 UTC | Modified: | 2005-12-07 00:33 UTC |
|
||||||||||
| From: | Claus-Werner dot Lermen at zf dot com | Assigned: | dmitry (profile) | |||||||||||
| Status: | Closed | Package: | IIS related | |||||||||||
| PHP Version: | 5CVS, 4CVS (2005-04-30) | OS: | Windows 2000/2003 | |||||||||||
| Private report: | No | CVE-ID: | None | |||||||||||
[2004-11-11 12:05 UTC] Claus-Werner dot Lermen at zf dot com
Description: ------------ php hangs when it tries to load an non existing extension. This happens no matter if cgi or ISAPI. The effect is most dramatic, if php runs als ISAPI Filter; then it is no longer possible to stop IIS. When running as cgi, the cgi timeout will evetually clean up the situation. A small typo in php.ini can thus make an webserver unavailable - which I would consider a bug. When I call php.exe from the commandline, a message box with an errormessage pops up (... unable to load dynamic library ...)! If php tries to to the same while running without a screen, could this cause the observed behaviour? I tried several php Version up to 5.02 - they all do the same! Reproduce code: --------------- any php code Expected result: ---------------- php writes an error message! Actual result: -------------- php hange when running without a screen
Patches
Pull Requests
History
AllCommentsChangesGit/SVN commits
[2005-01-04 11:22 UTC] programmer at bardware dot de
Hi, I'm a PHP user too, I can only tell from my experience and of how I understand the sources of PHP. In the PHP source-distribution there is a file main.c It reads: if (!module_initialized || PG(log_errors)) { char *log_buffer; #ifdef PHP_WIN32 if (type==E_CORE_ERROR || type==E_CORE_WARNING) { MessageBox(NULL, buffer, error_type_str, MB_OK|ZEND_SERVICE_MB_STYLE); } #endif "Unable to load dynamic library..." is a CORE_WARNING according to what I see in the log. That means - according to my understanding of this code - if you don't log or display CORE_WARNINGs the messagebox should not appear. Try to set error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR in the PHP.ini I don't understand why the PHP-developers decided to pop up a messagebox even if you decided to only log errors and warnings. I understand your problem because I wanted to restart the Apache-Server after updating the PHP-version through a Win2K-Terminal-Session and had to go to the physical webserver though, because the MessageBoxes are shown on Windowstation 0 and not on the very console created for my Terminal-Session. Best wishes and happy new year, Bernhard[2005-02-11 11:59 UTC] Claus-Werner dot Lermen at zf dot com
[2005-03-16 01:30 UTC] sniper@php.net
[2005-03-17 10:55 UTC] Claus-Werner dot Lermen at zf dot com
[2005-09-02 00:39 UTC] sniper@php.net
[2005-10-06 14:43 UTC] dolecek at stringdata dot cz
[2005-11-03 22:20 UTC] sniper@php.net
[2005-12-07 00:33 UTC] iliaa@php.net