]> granicus.if.org Git - php/commitdiff
Fixed $this release
authorDmitry Stogov <dmitry@zend.com>
Thu, 7 May 2015 14:26:01 +0000 (17:26 +0300)
committerDmitry Stogov <dmitry@zend.com>
Thu, 7 May 2015 14:26:01 +0000 (17:26 +0300)
Zend/zend_generators.c

index 0ac00afd4b5ded1381594f5824994ac28c02f99f..e845b2e5f2fe53aa4e1787be5ca8de3e0b4b3cfc 100644 (file)
@@ -76,7 +76,7 @@ static void zend_generator_cleanup_unfinished_execution(zend_generator *generato
        /* If yield was used as a function argument there may be active
         * method calls those objects need to be freed */
        while (execute_data->call) {
-               if (Z_OBJ(execute_data->call->This)) {
+               if (ZEND_CALL_INFO(execute_data->call) & ZEND_CALL_RELEASE_THIS) {
                        OBJ_RELEASE(Z_OBJ(execute_data->call->This));
                }
                execute_data->call = execute_data->call->prev_execute_data;