@@ -375,12 +375,19 @@ void dd_request_abort_redirect(void)
375375 ? ZSTR_VAL (_block_parameters -> security_response_id )
376376 : "" );
377377 } else {
378+ zend_string * security_response_id = NULL ;
379+ if (_block_parameters -> security_response_id ) {
380+ security_response_id =
381+ zend_string_dup (_block_parameters -> security_response_id , 0 );
382+ }
378383 _emit_error ("Datadog blocked the request and attempted a redirection "
379384 "to %s. No action required. Security Response ID: %s" ,
380385 ZSTR_VAL (_block_parameters -> redirection_location ),
381- _block_parameters -> security_response_id
382- ? ZSTR_VAL (_block_parameters -> security_response_id )
383- : "" );
386+ security_response_id ? ZSTR_VAL (security_response_id ) : "" );
387+ if (security_response_id ) {
388+ zend_string_release (security_response_id );
389+ security_response_id = NULL ;
390+ }
384391 }
385392}
386393
@@ -462,11 +469,18 @@ void _request_abort_static_page(int response_code, int type)
462469 ? ZSTR_VAL (_block_parameters -> security_response_id )
463470 : "" );
464471 } else {
472+ zend_string * security_response_id = NULL ;
473+ if (_block_parameters -> security_response_id ) {
474+ security_response_id =
475+ zend_string_dup (_block_parameters -> security_response_id , 0 );
476+ }
465477 _emit_error ("Datadog blocked the request and presented a static error "
466478 "page. No action required. Security Response ID: %s" ,
467- _block_parameters -> security_response_id
468- ? ZSTR_VAL (_block_parameters -> security_response_id )
469- : "" );
479+ security_response_id ? ZSTR_VAL (security_response_id ) : "" );
480+ if (security_response_id ) {
481+ zend_string_release (security_response_id );
482+ security_response_id = NULL ;
483+ }
470484 }
471485}
472486
@@ -552,13 +566,20 @@ static bool _abort_prelude(void)
552566 ? ZSTR_VAL (_block_parameters -> security_response_id )
553567 : "" );
554568 } else {
569+ zend_string * security_response_id = NULL ;
570+ if (_block_parameters -> security_response_id ) {
571+ security_response_id =
572+ zend_string_dup (_block_parameters -> security_response_id , 0 );
573+ }
555574 _emit_error (
556575 "Datadog blocked the request, but the response has already "
557576 "been partially committed. No action required. Security "
558577 "Response ID: %s" ,
559- _block_parameters -> security_response_id
560- ? ZSTR_VAL (_block_parameters -> security_response_id )
561- : "" );
578+ security_response_id ? ZSTR_VAL (security_response_id ) : "" );
579+ if (security_response_id ) {
580+ zend_string_release (security_response_id );
581+ security_response_id = NULL ;
582+ }
562583 }
563584 return false;
564585 }
0 commit comments