File tree Expand file tree Collapse file tree 2 files changed +7
-5
lines changed Expand file tree Collapse file tree 2 files changed +7
-5
lines changed Original file line number Diff line number Diff line change @@ -179,7 +179,8 @@ ZEND_METHOD(Closure, call)
179
179
if (fci_cache .function_handler -> common .fn_flags & ZEND_ACC_GENERATOR ) {
180
180
/* copied upon generator creation */
181
181
GC_DELREF (& closure -> std );
182
- } else if (fci_cache .function_handler -> common .fn_flags & ZEND_ACC_HEAP_RT_CACHE ) {
182
+ } else if (ZEND_USER_CODE (my_function .type )
183
+ && fci_cache .function_handler -> common .fn_flags & ZEND_ACC_HEAP_RT_CACHE ) {
183
184
efree (ZEND_MAP_PTR (my_function .op_array .run_time_cache ));
184
185
}
185
186
}
Original file line number Diff line number Diff line change @@ -278,7 +278,7 @@ typedef struct _zend_oparray_context {
278
278
/* Class has unresolved variance obligations. | | | */
279
279
#define ZEND_ACC_UNRESOLVED_VARIANCE (1 << 21) /* X | | | */
280
280
/* | | | */
281
- /* Function Flags | | | */
281
+ /* Function Flags (unused: 17, 23, 26) | | | */
282
282
/* ============== | | | */
283
283
/* | | | */
284
284
/* deprecation flag | | | */
@@ -314,15 +314,16 @@ typedef struct _zend_oparray_context {
314
314
/* run_time_cache allocated on heap (user only) | | | */
315
315
#define ZEND_ACC_HEAP_RT_CACHE (1 << 22) /* | X | | */
316
316
/* | | | */
317
- /* method flag used by Closure::__invoke() | | | */
318
- #define ZEND_ACC_USER_ARG_INFO (1 << 23 ) /* | X | | */
317
+ /* method flag used by Closure::__invoke() (int only) | | | */
318
+ #define ZEND_ACC_USER_ARG_INFO (1 << 22 ) /* | X | | */
319
319
/* | | | */
320
320
#define ZEND_ACC_GENERATOR (1 << 24) /* | X | | */
321
321
/* | | | */
322
+ /* function was processed by pass two (user only) | | | */
322
323
#define ZEND_ACC_DONE_PASS_TWO (1 << 25) /* | X | | */
323
324
/* | | | */
324
325
/* internal function is allocated at arena (int only) | | | */
325
- #define ZEND_ACC_ARENA_ALLOCATED (1 << 26 ) /* | X | | */
326
+ #define ZEND_ACC_ARENA_ALLOCATED (1 << 25 ) /* | X | | */
326
327
/* | | | */
327
328
/* op_array is a clone of trait method | | | */
328
329
#define ZEND_ACC_TRAIT_CLONE (1 << 27) /* | X | | */
You can’t perform that action at this time.
0 commit comments