summaryrefslogtreecommitdiff
path: root/Zend/zend_compile.h
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2007-02-15 10:38:28 +0000
committerDmitry Stogov <dmitry@php.net>2007-02-15 10:38:28 +0000
commit0291ad5fa68a3c87faba5c181d36ec2d5f6c2345 (patch)
treebc8700b873fcaf642c99606b9183c07076e94ed6 /Zend/zend_compile.h
parentb997390e1d2c49c88d75c3a28572ff42fadd8d57 (diff)
downloadphp-git-0291ad5fa68a3c87faba5c181d36ec2d5f6c2345.tar.gz
Fixed bug #40236 (php -a function allocation eats memory)
Diffstat (limited to 'Zend/zend_compile.h')
-rw-r--r--Zend/zend_compile.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/Zend/zend_compile.h b/Zend/zend_compile.h
index f471694611..9aeba56912 100644
--- a/Zend/zend_compile.h
+++ b/Zend/zend_compile.h
@@ -36,9 +36,9 @@
#define SET_UNUSED(op) (op).op_type = IS_UNUSED
-#define INC_BPC(op_array) if (CG(interactive)) { ((op_array)->backpatch_count++); }
-#define DEC_BPC(op_array) if (CG(interactive)) { ((op_array)->backpatch_count--); }
-#define HANDLE_INTERACTIVE() if (CG(interactive)) { execute_new_code(TSRMLS_C); }
+#define INC_BPC(op_array) if (op_array->fn_flags & ZEND_ACC_INTERACTIVE) { ((op_array)->backpatch_count++); }
+#define DEC_BPC(op_array) if (op_array->fn_flags & ZEND_ACC_INTERACTIVE) { ((op_array)->backpatch_count--); }
+#define HANDLE_INTERACTIVE() if (CG(active_op_array)->fn_flags & ZEND_ACC_INTERACTIVE) { execute_new_code(TSRMLS_C); }
#define RESET_DOC_COMMENT() \
{ \
@@ -116,6 +116,9 @@ typedef struct _zend_try_catch_element {
#define ZEND_ACC_FINAL_CLASS 0x40
#define ZEND_ACC_INTERFACE 0x80
+/* op_array flags */
+#define ZEND_ACC_INTERACTIVE 0x10
+
/* method flags (visibility) */
/* The order of those must be kept - public < protected < private */
#define ZEND_ACC_PUBLIC 0x100