@@ -81,15 +81,9 @@ static int zend_implement_throwable(zend_class_entry *interface, zend_class_entr
8181}
8282/* }}} */
8383
84- static inline zend_class_entry * i_get_exception_base (zend_object * object ) /* {{{ */
85- {
86- return instanceof_function (object -> ce , zend_ce_exception ) ? zend_ce_exception : zend_ce_error ;
87- }
88- /* }}} */
89-
9084ZEND_API zend_class_entry * zend_get_exception_base (zend_object * object ) /* {{{ */
9185{
92- return i_get_exception_base (object ) ;
86+ return instanceof_function (object -> ce , zend_ce_exception ) ? zend_ce_exception : zend_ce_error ;
9387}
9488/* }}} */
9589
@@ -115,17 +109,17 @@ void zend_exception_set_previous(zend_object *exception, zend_object *add_previo
115109 ZVAL_OBJ (& zv , exception );
116110 ex = & zv ;
117111 do {
118- ancestor = zend_read_property_ex (i_get_exception_base (add_previous ), add_previous , ZSTR_KNOWN (ZEND_STR_PREVIOUS ), 1 , & rv );
112+ ancestor = zend_read_property_ex (zend_get_exception_base (add_previous ), add_previous , ZSTR_KNOWN (ZEND_STR_PREVIOUS ), 1 , & rv );
119113 ZVAL_DEREF (ancestor );
120114 while (Z_TYPE_P (ancestor ) == IS_OBJECT ) {
121115 if (Z_OBJ_P (ancestor ) == Z_OBJ_P (ex )) {
122116 OBJ_RELEASE (add_previous );
123117 return ;
124118 }
125- ancestor = zend_read_property_ex (i_get_exception_base (Z_OBJ_P (ancestor )), Z_OBJ_P (ancestor ), ZSTR_KNOWN (ZEND_STR_PREVIOUS ), 1 , & rv );
119+ ancestor = zend_read_property_ex (zend_get_exception_base (Z_OBJ_P (ancestor )), Z_OBJ_P (ancestor ), ZSTR_KNOWN (ZEND_STR_PREVIOUS ), 1 , & rv );
126120 ZVAL_DEREF (ancestor );
127121 }
128- base_ce = i_get_exception_base (Z_OBJ_P (ex ));
122+ base_ce = zend_get_exception_base (Z_OBJ_P (ex ));
129123 previous = zend_read_property_ex (base_ce , Z_OBJ_P (ex ), ZSTR_KNOWN (ZEND_STR_PREVIOUS ), 1 , & rv );
130124 ZVAL_DEREF (previous );
131125 if (Z_TYPE_P (previous ) == IS_NULL ) {
@@ -273,7 +267,7 @@ static zend_object *zend_default_exception_new(zend_class_entry *class_type) /*
273267 }
274268 Z_SET_REFCOUNT (trace , 0 );
275269
276- base_ce = i_get_exception_base (object );
270+ base_ce = zend_get_exception_base (object );
277271
278272 if (EXPECTED ((class_type != zend_ce_parse_error && class_type != zend_ce_compile_error )
279273 || !(filename = zend_get_compiled_filename ()))) {
@@ -311,7 +305,7 @@ ZEND_METHOD(Exception, __construct)
311305 zend_class_entry * base_ce ;
312306
313307 object = ZEND_THIS ;
314- base_ce = i_get_exception_base (Z_OBJ_P (object ));
308+ base_ce = zend_get_exception_base (Z_OBJ_P (object ));
315309
316310 if (zend_parse_parameters (ZEND_NUM_ARGS (), "|SlO!" , & message , & code , & previous , zend_ce_throwable ) == FAILURE ) {
317311 RETURN_THROWS ();
@@ -335,9 +329,9 @@ ZEND_METHOD(Exception, __construct)
335329
336330/* {{{ Exception unserialize checks */
337331#define CHECK_EXC_TYPE (id , type ) \
338- pvalue = zend_read_property_ex(i_get_exception_base (Z_OBJ_P(object)), Z_OBJ_P(object), ZSTR_KNOWN(id), 1, &value); \
332+ pvalue = zend_read_property_ex(zend_get_exception_base (Z_OBJ_P(object)), Z_OBJ_P(object), ZSTR_KNOWN(id), 1, &value); \
339333 if (Z_TYPE_P(pvalue) != IS_NULL && Z_TYPE_P(pvalue) != type) { \
340- zend_unset_property(i_get_exception_base (Z_OBJ_P(object)), Z_OBJ_P(object), ZSTR_VAL(ZSTR_KNOWN(id)), ZSTR_LEN(ZSTR_KNOWN(id))); \
334+ zend_unset_property(zend_get_exception_base (Z_OBJ_P(object)), Z_OBJ_P(object), ZSTR_VAL(ZSTR_KNOWN(id)), ZSTR_LEN(ZSTR_KNOWN(id))); \
341335 }
342336
343337ZEND_METHOD (Exception , __wakeup )
@@ -401,9 +395,9 @@ ZEND_METHOD(ErrorException, __construct)
401395/* }}} */
402396
403397#define GET_PROPERTY (object , id ) \
404- zend_read_property_ex(i_get_exception_base (Z_OBJ_P(object)), Z_OBJ_P(object), ZSTR_KNOWN(id), 0, &rv)
398+ zend_read_property_ex(zend_get_exception_base (Z_OBJ_P(object)), Z_OBJ_P(object), ZSTR_KNOWN(id), 0, &rv)
405399#define GET_PROPERTY_SILENT (object , id ) \
406- zend_read_property_ex(i_get_exception_base (Z_OBJ_P(object)), Z_OBJ_P(object), ZSTR_KNOWN(id), 1, &rv)
400+ zend_read_property_ex(zend_get_exception_base (Z_OBJ_P(object)), Z_OBJ_P(object), ZSTR_KNOWN(id), 1, &rv)
407401
408402/* {{{ Get the file in which the exception occurred */
409403ZEND_METHOD (Exception , getFile )
@@ -621,7 +615,7 @@ ZEND_METHOD(Exception, getTraceAsString)
621615 ZEND_PARSE_PARAMETERS_NONE ();
622616
623617 zval * object = ZEND_THIS ;
624- zend_class_entry * base_ce = i_get_exception_base (Z_OBJ_P (object ));
618+ zend_class_entry * base_ce = zend_get_exception_base (Z_OBJ_P (object ));
625619 zval rv ;
626620 const zval * trace = zend_read_property_ex (base_ce , Z_OBJ_P (object ), ZSTR_KNOWN (ZEND_STR_TRACE ), 1 , & rv );
627621 if (EG (exception )) {
@@ -725,7 +719,7 @@ ZEND_METHOD(Exception, __toString)
725719
726720 exception = ZEND_THIS ;
727721 /* Reset apply counts */
728- while (Z_TYPE_P (exception ) == IS_OBJECT && (base_ce = i_get_exception_base (Z_OBJ_P (exception ))) && instanceof_function (Z_OBJCE_P (exception ), base_ce )) {
722+ while (Z_TYPE_P (exception ) == IS_OBJECT && (base_ce = zend_get_exception_base (Z_OBJ_P (exception ))) && instanceof_function (Z_OBJCE_P (exception ), base_ce )) {
729723 if (Z_IS_RECURSIVE_P (exception )) {
730724 Z_UNPROTECT_RECURSION_P (exception );
731725 } else {
@@ -736,7 +730,7 @@ ZEND_METHOD(Exception, __toString)
736730 }
737731
738732 exception = ZEND_THIS ;
739- base_ce = i_get_exception_base (Z_OBJ_P (exception ));
733+ base_ce = zend_get_exception_base (Z_OBJ_P (exception ));
740734
741735 /* We store the result in the private property string so we can access
742736 * the result in uncaught exception handlers without memleaks. */
@@ -928,7 +922,7 @@ ZEND_API ZEND_COLD zend_result zend_exception_error(zend_object *ex, int severit
928922 if (Z_TYPE (tmp ) != IS_STRING ) {
929923 zend_error (E_WARNING , "%s::__toString() must return a string" , ZSTR_VAL (ce_exception -> name ));
930924 } else {
931- zend_update_property_ex (i_get_exception_base (ex ), ex , ZSTR_KNOWN (ZEND_STR_STRING ), & tmp );
925+ zend_update_property_ex (zend_get_exception_base (ex ), ex , ZSTR_KNOWN (ZEND_STR_STRING ), & tmp );
932926 }
933927 }
934928 zval_ptr_dtor (& tmp );
0 commit comments