Skip to content

Commit da3310f

Browse files
committed
Fix phpGH-12232: FPM: segfault dynamically loading extension without opache
1 parent 55ed769 commit da3310f

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

Zend/zend_globals.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ struct _zend_compiler_globals {
119119
bool multibyte;
120120
bool detect_unicode;
121121
bool encoding_declared;
122+
bool interned_strings_initialized;
122123

123124
zend_ast *ast;
124125
zend_arena *ast_arena;

Zend/zend_string.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,9 @@ static zend_string* ZEND_FASTCALL zend_new_interned_string_request(zend_string *
231231
return ret;
232232
}
233233

234+
if (!CG(interned_strings_initialized)) {
235+
zend_interned_strings_activate();
236+
}
234237
ret = zend_interned_string_ht_lookup(str, &CG(interned_strings));
235238
if (ret) {
236239
zend_string_release(str);
@@ -339,6 +342,7 @@ static zend_string* ZEND_FASTCALL zend_string_init_existing_interned_request(con
339342
ZEND_API void zend_interned_strings_activate(void)
340343
{
341344
zend_init_interned_strings_ht(&CG(interned_strings), 0);
345+
CG(interned_strings_initialized) = true;
342346
}
343347

344348
ZEND_API void zend_interned_strings_deactivate(void)

0 commit comments

Comments
 (0)