diff options
author | Nikita Popov <nikic@php.net> | 2012-06-23 16:08:15 +0200 |
---|---|---|
committer | Nikita Popov <nikic@php.net> | 2012-06-23 16:08:15 +0200 |
commit | ab75ed6ba9b5eace710976bf76d631728d4bb403 (patch) | |
tree | ac7d081bb197d1d7cd09475a9f74ec8cbeb9c369 /Zend/zend_generators.h | |
parent | 14766e1417c721d9643f6a2a785db3e88b565814 (diff) | |
download | php-git-ab75ed6ba9b5eace710976bf76d631728d4bb403.tar.gz |
Disallow closing a generator during its execution
If a generator is closed while it is running an E_WARNING is thrown and the
call is ignored. Maybe a fatal error should be thrown instead?
Diffstat (limited to 'Zend/zend_generators.h')
-rw-r--r-- | Zend/zend_generators.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Zend/zend_generators.h b/Zend/zend_generators.h index 89193bbe6e..73d85287a7 100644 --- a/Zend/zend_generators.h +++ b/Zend/zend_generators.h @@ -46,6 +46,10 @@ typedef struct _zend_generator { temp_variable *send_target; /* Largest used integer key for auto-incrementing keys */ long largest_used_integer_key; + + /* We need to know whether the generator is currently executed to avoid it + * being closed while still running */ + zend_bool is_currently_running; } zend_generator; extern ZEND_API zend_class_entry *zend_ce_generator; |