mirror of
https://github.com/php/php-src.git
synced 2025-08-16 14:08:47 +02:00
Temorary fix for phpdbg segfault while use zend_mm_set_custom_handlers
This commit is contained in:
parent
69d183dd19
commit
96f7a33df6
2 changed files with 11 additions and 1 deletions
|
@ -1950,6 +1950,9 @@ void zend_mm_shutdown(zend_mm_heap *heap, int full, int silent)
|
||||||
|
|
||||||
#if ZEND_MM_CUSTOM
|
#if ZEND_MM_CUSTOM
|
||||||
if (heap->use_custom_heap) {
|
if (heap->use_custom_heap) {
|
||||||
|
if (full) {
|
||||||
|
heap->_free(heap);
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -983,7 +983,14 @@ void *phpdbg_malloc_wrapper(size_t size) /* {{{ */
|
||||||
|
|
||||||
void phpdbg_free_wrapper(void *p) /* {{{ */
|
void phpdbg_free_wrapper(void *p) /* {{{ */
|
||||||
{
|
{
|
||||||
zend_mm_free(phpdbg_mm_get_heap(), p);
|
zend_mm_heap *heap = phpdbg_mm_get_heap();
|
||||||
|
if (UNEXPECTED(heap == p)) {
|
||||||
|
/* TODO: heap maybe allocated by mmap(zend_mm_init) or malloc(USE_ZEND_ALLOC=0)
|
||||||
|
* let's prevent it from segfault for now
|
||||||
|
*/
|
||||||
|
} else {
|
||||||
|
zend_mm_free(heap, p);
|
||||||
|
}
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
void *phpdbg_realloc_wrapper(void *ptr, size_t size) /* {{{ */
|
void *phpdbg_realloc_wrapper(void *ptr, size_t size) /* {{{ */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue