Catch \Throwable

This commit is contained in:
Filip Procházka 2016-05-12 17:11:08 +02:00
parent 7e59c71d9a
commit 103526b40f
4 changed files with 18 additions and 0 deletions

View File

@ -175,6 +175,10 @@ class DebugClassLoader
} catch (\Exception $e) { } catch (\Exception $e) {
ErrorHandler::unstackErrors(); ErrorHandler::unstackErrors();
throw $e;
} catch (\Throwable $e) {
ErrorHandler::unstackErrors();
throw $e; throw $e;
} }

View File

@ -447,6 +447,10 @@ class ErrorHandler
} catch (\Exception $e) { } catch (\Exception $e) {
$this->isRecursive = false; $this->isRecursive = false;
throw $e;
} catch (\Throwable $e) {
$this->isRecursive = false;
throw $e; throw $e;
} }
} }
@ -555,6 +559,8 @@ class ErrorHandler
} }
} catch (\Exception $exception) { } catch (\Exception $exception) {
// Handled below // Handled below
} catch (\Throwable $exception) {
// Handled below
} }
if ($error && $error['type'] &= E_PARSE | E_ERROR | E_CORE_ERROR | E_COMPILE_ERROR) { if ($error && $error['type'] &= E_PARSE | E_ERROR | E_CORE_ERROR | E_COMPILE_ERROR) {

View File

@ -861,6 +861,9 @@ class OptionsResolver implements Options, OptionsResolverInterface
} catch (\Exception $e) { } catch (\Exception $e) {
unset($this->calling[$option]); unset($this->calling[$option]);
throw $e; throw $e;
} catch (\Throwable $e) {
unset($this->calling[$option]);
throw $e;
} }
unset($this->calling[$option]); unset($this->calling[$option]);
// END // END
@ -963,6 +966,9 @@ class OptionsResolver implements Options, OptionsResolverInterface
} catch (\Exception $e) { } catch (\Exception $e) {
unset($this->calling[$option]); unset($this->calling[$option]);
throw $e; throw $e;
} catch (\Throwable $e) {
unset($this->calling[$option]);
throw $e;
} }
unset($this->calling[$option]); unset($this->calling[$option]);
// END // END

View File

@ -141,6 +141,8 @@ abstract class AbstractDumper implements DataDumperInterface, DumperInterface
$this->dumpLine(-1); $this->dumpLine(-1);
} catch (\Exception $exception) { } catch (\Exception $exception) {
// Re-thrown below // Re-thrown below
} catch (\Throwable $exception) {
// Re-thrown below
} }
if ($output) { if ($output) {
$this->setOutput($prevOutput); $this->setOutput($prevOutput);