[2.3][Debug] Fix fatal-errors handling on HHVM

This commit is contained in:
Nicolas Grekas 2015-06-16 14:17:21 +02:00
parent 287a577b8c
commit d29bfdcc31

View File

@ -133,6 +133,7 @@ class ErrorHandler
unset($context['GLOBALS']); unset($context['GLOBALS']);
} }
$level &= E_ALL | E_STRICT;
$exception = new ContextErrorException(sprintf('%s: %s in %s line %d', isset($this->levels[$level]) ? $this->levels[$level] : $level, $message, $file, $line), 0, $level, $file, $line, $context); $exception = new ContextErrorException(sprintf('%s: %s in %s line %d', isset($this->levels[$level]) ? $this->levels[$level] : $level, $message, $file, $line), 0, $level, $file, $line, $context);
// Exceptions thrown from error handlers are sometimes not caught by the exception // Exceptions thrown from error handlers are sometimes not caught by the exception
@ -173,7 +174,7 @@ class ErrorHandler
} }
$this->reservedMemory = ''; $this->reservedMemory = '';
$type = $error['type']; $type = $error['type'] & (E_ALL | E_STRICT);
if (0 === $this->level || !in_array($type, array(E_ERROR, E_CORE_ERROR, E_COMPILE_ERROR, E_PARSE))) { if (0 === $this->level || !in_array($type, array(E_ERROR, E_CORE_ERROR, E_COMPILE_ERROR, E_PARSE))) {
return; return;
} }