dmitry Thu Nov 1 12:26:38 2007 UTC
Modified files:
/php-src/ext/soap soap.c
Log:
Fixed bug #42773 (WSDL error causes HTTP 500 Response)
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/soap.c?r1=1.233&r2=1.234&diff_format=u
Index: php-src/ext/soap/soap.c
diff -u php-src/ext/soap/soap.c:1.233 php-src/ext/soap/soap.c:1.234
--- php-src/ext/soap/soap.c:1.233 Tue Oct 30 07:22:12 2007
+++ php-src/ext/soap/soap.c Thu Nov 1 12:26:38 2007
@@ -17,7 +17,7 @@
| Dmitry Stogov <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
*/
-/* $Id: soap.c,v 1.233 2007/10/30 07:22:12 dmitry Exp $ */
+/* $Id: soap.c,v 1.234 2007/11/01 12:26:38 dmitry Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -2423,13 +2423,14 @@
static void soap_error_handler(int error_num, const char *error_filename,
const uint error_lineno, const char *format, va_list args)
{
- zend_bool _old_in_compilation, _old_in_execution;
+ zend_bool _old_in_compilation, _old_in_execution, _old_headers_sent;
zend_execute_data *_old_current_execute_data;
TSRMLS_FETCH();
_old_in_compilation = CG(in_compilation);
_old_in_execution = EG(in_execution);
_old_current_execute_data = EG(current_execute_data);
+ _old_headers_sent = SG(headers_sent);
if (!SOAP_GLOBAL(use_soap_error_handler)) {
call_old_error_handler(error_num, error_filename, error_lineno,
format, args);
@@ -2483,12 +2484,14 @@
old_objects = EG(objects_store).object_buckets;
EG(objects_store).object_buckets = NULL;
PG(display_errors) = 0;
+ SG(headers_sent) = 1;
zend_try {
call_old_error_handler(error_num,
error_filename, error_lineno, format, args);
} zend_catch {
CG(in_compilation) = _old_in_compilation;
EG(in_execution) = _old_in_execution;
EG(current_execute_data) =
_old_current_execute_data;
+ SG(headers_sent) = _old_headers_sent;
} zend_end_try();
EG(objects_store).object_buckets = old_objects;
PG(display_errors) = old;
@@ -2554,12 +2557,14 @@
}
PG(display_errors) = 0;
+ SG(headers_sent) = 1;
zend_try {
call_old_error_handler(error_num, error_filename,
error_lineno, format, args);
} zend_catch {
CG(in_compilation) = _old_in_compilation;
EG(in_execution) = _old_in_execution;
EG(current_execute_data) = _old_current_execute_data;
+ SG(headers_sent) = _old_headers_sent;
} zend_end_try();
PG(display_errors) = old;
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php