diff --git a/processor/dispatch.m4 b/processor/dispatch.m4 index 2fa2dad..637b461 100644 --- a/processor/dispatch.m4 +++ b/processor/dispatch.m4 @@ -1,6 +1,7 @@ dnl DISPATCH(1:type, 2:elm) define(`DISPATCH', ` DBG(`$0($*)') + assert(sizeof($1) == sizeof(src->$2)); ifelse( `$1', `zend_bool', `PROC_INT(`$2', `u', `$1')' , `$1', `zend_uchar', `PROC_INT(`$2', `u', `$1')' diff --git a/processor/processor.m4 b/processor/processor.m4 index 8305650..da237c4 100644 --- a/processor/processor.m4 +++ b/processor/processor.m4 @@ -149,7 +149,11 @@ dnl }}} DONE(value) DISPATCH(zval_data_type, type) DISPATCH(zend_uchar, is_ref) +#ifdef ZEND_ENGINE_2 + DISPATCH(zend_uint, refcount) +#else DISPATCH(zend_ushort, refcount) +#endif #ifdef ZEND_ENGINE_2_3 DISPATCH(zend_uchar, idx_type) #endif