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
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If this is not your bug, you can add a comment by following this link.
If this is your bug, but you forgot your password, you can retrieve your password here.
Password:
Status:
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

Add a Patch

Pull Requests

Add a Pull Request

 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Apr 25 12:01:31 2024 UTC