php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #80823 TSRMG macros sometimes used directly instead of going through ZEND_TSRMG
Submitted: 2021-03-03 00:29 UTC Modified: -
From: theultramage at gmail dot com Assigned:
Status: Open Package: Unknown/Other Function
PHP Version: 8.0.2 OS: FreeBSD 12.2
Private report: No CVE-ID: None
View Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
If you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: theultramage at gmail dot com
New email:
PHP Version: OS:

 

 [2021-03-03 00:29 UTC] theultramage at gmail dot com
Description:
------------
While investigating a TSRM problem, I noticed that several places use TSRMG_* macros from TSRM.h directly instead of using the ZEND_TSRMG_* wrappers from zend.h. In the case that ZEND_ENABLE_STATIC_TSRMLS_CACHE is disabled (or forcefully patched out, since currently it's hardcoded into every m4 makefile), some parts will not switch over to the no-cache macros and cause a compilation error.

I am not sure if these omissions are intended, but some of these have been there since 2001 and the wrapper was added in 2014, so my guess is they were just skipped by accident.

ext/oci8/php_oci8_int.h
ext/readline/readline_cli.h
ext/snmp/php_snmp.h
main/output.c
sapi/phpdbg/phpdbg.c
sapi/phpdbg/phpdbg_utils.h



Patches

Pull Requests

 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Mon Dec 30 14:01:28 2024 UTC