#30760 [Fbk->Opn]: php hangs when extension does not exist
| From: | Claus-Werner dot Lermen at zf dot com | Date: | Fri, 11 Feb 2005 10:59:41 +0000 |
| Subject: | #30760 [Fbk->Opn]: php hangs when extension does not exist | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-73861@lists.php.net to get a copy of this message | ||
ID: 30760
User updated by: Claus-Werner dot Lermen at zf dot com
Reported By: Claus-Werner dot Lermen at zf dot com
-Status: Feedback
+Status: Open
Bug Type: IIS related
Operating System: Windows 2000/2003
PHP Version: 4.3.9
New Comment:
the latest snapshot does not solve the problem: php stills hangs when
an extension cannot be loaded.
When php.exe is called from the commandline the messagebox still pops
up, even when I disable the E_CORE_WARNING.
php is normally running in the background, therefore a messagebox
should never be used - any message should be written to a logfile!
Previous Comments:
------------------------------------------------------------------------
[2005-02-11 06:16:54] sniper@php.net
Please try using this CVS snapshot:
http://snaps.php.net/php4-STABLE-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php4-win32-STABLE-latest.zip
------------------------------------------------------------------------
[2005-01-04 11:22:56] 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
------------------------------------------------------------------------
[2004-11-11 12:05:28] 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
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=30760&edit=1