@@ -307,18 +307,6 @@ mod detail {
307307 samples. try_reserve ( max_depth >> 3 ) ?;
308308
309309 while let Some ( execute_data) = unsafe { execute_data_ptr. as_ref ( ) } {
310- // Nested generators leave a placeholder frame (func == NULL,
311- // This == generator object) on the stack. Resolve it to the real
312- // frame the same way zend_fetch_debug_backtrace and the observer
313- // API do.
314- if execute_data. func . is_null ( ) {
315- execute_data_ptr = unsafe {
316- crate :: bindings:: zend_generator_check_placeholder_frame ( execute_data_ptr)
317- } ;
318- }
319- let Some ( execute_data) = ( unsafe { execute_data_ptr. as_ref ( ) } ) else {
320- break ;
321- } ;
322310 // allowed because it's only used on the frameless path
323311 #[ allow( unused_variables) ]
324312 if let Some ( func) = unsafe { execute_data. func . as_ref ( ) } {
@@ -505,14 +493,6 @@ mod detail {
505493 let mut execute_data_ptr = top_execute_data;
506494
507495 while let Some ( execute_data) = unsafe { execute_data_ptr. as_ref ( ) } {
508- if execute_data. func . is_null ( ) {
509- execute_data_ptr = unsafe {
510- crate :: bindings:: zend_generator_check_placeholder_frame ( execute_data_ptr)
511- } ;
512- }
513- let Some ( execute_data) = ( unsafe { execute_data_ptr. as_ref ( ) } ) else {
514- break ;
515- } ;
516496 let maybe_frame = unsafe { collect_call_frame ( execute_data) } ;
517497 if let Some ( frame) = maybe_frame {
518498 samples. try_push ( frame) ?;
0 commit comments