summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NEWS2
-rw-r--r--main/main.c6
2 files changed, 8 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 3b7a382038..f6c0d4d415 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,8 @@ PHP NEWS
. Fixed bug #47358 (glob returns error, should be empty array()). (Pierre)
. Fixed bug #65463 (SIGSEGV during zend_shutdown()). (Keyur Govande)
. Fixed bug #66036 (Crash on SIGTERM in apache process). (Keyur Govande)
+ . Fixed bug #67644 (Memory corruption & crash during ob_start function
+ callback). (Stas)
. Fixed bug #67878 (program_prefix not honoured in man pages). (Remi)
- COM:
diff --git a/main/main.c b/main/main.c
index 66e4b6e93f..3eaecf0fe4 100644
--- a/main/main.c
+++ b/main/main.c
@@ -1767,6 +1767,12 @@ void php_request_shutdown(void *dummy)
}
} zend_end_try();
+ /* Output buffer handlers may have created new objects. Mark these objects
+ as destructed to avoid calling their dtors too late on shutdown when
+ all dtors were supposed to be cleaned
+ */
+ zend_objects_store_mark_destructed(&EG(objects_store) TSRMLS_CC);
+
/* 4. Reset max_execution_time (no longer executing php code after response sent) */
zend_try {
zend_unset_timeout(TSRMLS_C);