diff options
Diffstat (limited to 'ext/soap/soap.c')
-rw-r--r-- | ext/soap/soap.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/soap/soap.c b/ext/soap/soap.c index 8d7318022a..1c966c5879 100644 --- a/ext/soap/soap.c +++ b/ext/soap/soap.c @@ -1052,9 +1052,14 @@ PHP_METHOD(soapserver, handle) if (zend_hash_find(&EG(symbol_table), HTTP_RAW_POST_DATA, sizeof(HTTP_RAW_POST_DATA), (void **) &raw_post)!=FAILURE && ((*raw_post)->type==IS_STRING)) { + int old_error_reporting = EG(error_reporting); + EG(error_reporting) &= ~(E_WARNING|E_NOTICE|E_USER_WARNING|E_USER_NOTICE); + doc_request = xmlParseMemory(Z_STRVAL_PP(raw_post),Z_STRLEN_PP(raw_post)); xmlCleanupParser(); + EG(error_reporting) = old_error_reporting; + if (doc_request == NULL) { php_error(E_ERROR, "Bad Request"); } |