From: Dmitry Stogov Date: Tue, 14 Feb 2012 09:27:08 +0000 (+0000) Subject: Added ability to reset user opcode handlers (Yoram) X-Git-Tag: php-5.5.0alpha1~533 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e16ec62d209eb074bbef24f2c713d0134ec3df13;p=php Added ability to reset user opcode handlers (Yoram) --- diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index 1798045bc9..d72fc7369a 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -1512,7 +1512,12 @@ ZEND_API void execute_internal(zend_execute_data *execute_data_ptr, int return_v ZEND_API int zend_set_user_opcode_handler(zend_uchar opcode, user_opcode_handler_t handler) { if (opcode != ZEND_USER_OPCODE) { - zend_user_opcodes[opcode] = ZEND_USER_OPCODE; + if (handler == NULL) { + /* restore the original handler */ + zend_user_opcodes[opcode] = opcode; + } else { + zend_user_opcodes[opcode] = ZEND_USER_OPCODE; + } zend_user_opcode_handlers[opcode] = handler; return SUCCESS; }