@@ -44,11 +44,11 @@ zend_llist zend_observer_fiber_init;
44
44
zend_llist zend_observer_fiber_switch ;
45
45
zend_llist zend_observer_fiber_destroy ;
46
46
47
- int zend_observer_fcall_op_array_extension = -1 ;
47
+ int zend_observer_fcall_op_array_extension ;
48
48
49
- ZEND_TLS zend_arena * fcall_handlers_arena = NULL ;
50
- ZEND_TLS zend_execute_data * first_observed_frame = NULL ;
51
- ZEND_TLS zend_execute_data * current_observed_frame = NULL ;
49
+ ZEND_TLS zend_arena * fcall_handlers_arena ;
50
+ ZEND_TLS zend_execute_data * first_observed_frame ;
51
+ ZEND_TLS zend_execute_data * current_observed_frame ;
52
52
53
53
// Call during minit/startup ONLY
54
54
ZEND_API void zend_observer_fcall_register (zend_observer_fcall_init init ) {
@@ -78,12 +78,18 @@ ZEND_API void zend_observer_startup(void) {
78
78
zend_llist_init (& zend_observer_fiber_init , sizeof (zend_observer_fiber_init_handler ), NULL , 1 );
79
79
zend_llist_init (& zend_observer_fiber_switch , sizeof (zend_observer_fiber_switch_handler ), NULL , 1 );
80
80
zend_llist_init (& zend_observer_fiber_destroy , sizeof (zend_observer_fiber_destroy_handler ), NULL , 1 );
81
+
82
+ zend_observer_fcall_op_array_extension = -1 ;
81
83
}
82
84
83
85
ZEND_API void zend_observer_activate (void ) {
84
86
if (ZEND_OBSERVER_ENABLED ) {
85
87
fcall_handlers_arena = zend_arena_create (4096 );
88
+ } else {
89
+ fcall_handlers_arena = NULL ;
86
90
}
91
+ first_observed_frame = NULL ;
92
+ current_observed_frame = NULL ;
87
93
}
88
94
89
95
ZEND_API void zend_observer_deactivate (void ) {
0 commit comments