Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion main/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -346,7 +346,7 @@ static PHP_INI_MH(OnChangeMemoryLimit)
}

zend_ini_entry *max_mem_limit_ini = zend_hash_str_find_ptr(EG(ini_directives), ZEND_STRL("max_memory_limit"));
entry->value = zend_string_copy(max_mem_limit_ini->value);
entry->value = zend_string_init(ZSTR_VAL(max_mem_limit_ini->value), ZSTR_LEN(max_mem_limit_ini->value), true);
PG(memory_limit) = PG(max_memory_limit);

return SUCCESS;
Expand Down
19 changes: 19 additions & 0 deletions tests/basic/gh17951_runtime_change_6.phpt
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
--TEST--
GH-17951 Runtime Change 6
--INI--
memory_limit=128M
max_memory_limit=512M
--FILE--
<?php
for($i = 0; $i < 3; $i++) {
ini_set('memory_limit', '1024M');
echo ini_get('memory_limit');
}
?>
--EXPECTF--
Warning: Failed to set memory_limit to 1073741824 bytes. Setting to max_memory_limit instead (currently: 536870912 bytes) in %s on line %d
512M
Warning: Failed to set memory_limit to 1073741824 bytes. Setting to max_memory_limit instead (currently: 536870912 bytes) in %s on line %d
512M
Warning: Failed to set memory_limit to 1073741824 bytes. Setting to max_memory_limit instead (currently: 536870912 bytes) in %s on line %d
512M