mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00
Rewrote exception support. Fixes a few limitations and bugs in the old
implementation, and allows exceptions to 'fire' much earlier than before. Instructions on how to use the new mechanism will follow on internals@ shortly... Note - this (most probably) breaks the current implementation of set_exception_handler()
This commit is contained in:
parent
330d9f6352
commit
9e60cb553f
11 changed files with 674 additions and 569 deletions
|
@ -435,7 +435,7 @@ ZEND_API void zend_throw_exception_ex(zend_class_entry *exception_ce, long code
|
|||
|
||||
efree(message);
|
||||
|
||||
EG(exception) = ex;
|
||||
zend_throw_exception_internal(ex TSRMLS_CC);
|
||||
}
|
||||
|
||||
/* at the moment we can't use zend_throw_exception_ex because we don't have a protable
|
||||
|
@ -465,7 +465,7 @@ ZEND_API void zend_throw_exception(zend_class_entry *exception_ce, char *message
|
|||
zend_update_property_long(default_exception_ptr, ex, "code", sizeof("code")-1, code TSRMLS_CC);
|
||||
}
|
||||
|
||||
EG(exception) = ex;
|
||||
zend_throw_exception_internal(ex TSRMLS_CC);
|
||||
}
|
||||
|
||||
static void zend_error_va(int type, const char *file, uint lineno, const char *format, ...)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue