Browse Source

Initialize only the necessary fields.

pull/1928/head
Dmitry Stogov 9 years ago
parent
commit
f216176bc9
  1. 4
      Zend/zend_vm_def.h
  2. 4
      Zend/zend_vm_execute.h

4
Zend/zend_vm_def.h

@ -4038,7 +4038,9 @@ ZEND_VM_HANDLER(41, ZEND_GENERATOR_CREATE, ANY, ANY)
generator = (zend_generator *) Z_OBJ_P(EX(return_value));
generator->execute_data = gen_execute_data;
generator->frozen_call_stack = NULL;
memset(&generator->execute_fake, 0, sizeof(zend_execute_data));
generator->execute_fake.opline = NULL;
generator->execute_fake.func = NULL;
generator->execute_fake.prev_execute_data = NULL;
ZVAL_OBJ(&generator->execute_fake.This, (zend_object *) generator);
gen_execute_data->opline = opline + 1;

4
Zend/zend_vm_execute.h

@ -1179,7 +1179,9 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GENERATOR_CREATE_SPEC_HANDLER(
generator = (zend_generator *) Z_OBJ_P(EX(return_value));
generator->execute_data = gen_execute_data;
generator->frozen_call_stack = NULL;
memset(&generator->execute_fake, 0, sizeof(zend_execute_data));
generator->execute_fake.opline = NULL;
generator->execute_fake.func = NULL;
generator->execute_fake.prev_execute_data = NULL;
ZVAL_OBJ(&generator->execute_fake.This, (zend_object *) generator);
gen_execute_data->opline = opline + 1;

Loading…
Cancel
Save