diff options
Diffstat (limited to 'zend')
-rw-r--r-- | zend/exception_handler.cpp | 7 | ||||
-rw-r--r-- | zend/includes.h | 1 |
2 files changed, 6 insertions, 2 deletions
diff --git a/zend/exception_handler.cpp b/zend/exception_handler.cpp index 75361b2..b864e78 100644 --- a/zend/exception_handler.cpp +++ b/zend/exception_handler.cpp @@ -43,7 +43,10 @@ Value set_exception_handler(const std::function<Value(Parameters ¶ms)> &hand return output; } -Value set_error_handler(const std::function<Value(Parameters ¶ms)> &handler) +/** + * Set a std::function as a php error handler + */ +Value set_error_handler(const std::function<Value(Parameters ¶ms)> &handler, Error error) { // create the functor which wraps our callback Function functor(handler); @@ -62,7 +65,7 @@ Value set_error_handler(const std::function<Value(Parameters ¶ms)> &handler) // copy our zval into the user_error_handler MAKE_COPY_ZVAL(&value, EG(user_error_handler)); - EG(user_error_handler_error_reporting) = (int) (E_ALL | E_STRICT); + EG(user_error_handler_error_reporting) = (int) error; // return the original handler return output; diff --git a/zend/includes.h b/zend/includes.h index aed5ed0..4d35cfd 100644 --- a/zend/includes.h +++ b/zend/includes.h @@ -57,6 +57,7 @@ #include "../include/fatalerror.h" #include "../include/streams.h" #include "../include/type.h" +#include "../include/errors.h" #include "../include/hashparent.h" #include "../include/value.h" #include "../include/valueiterator.h" |