annotate vendor/psy/psysh/src/Exception/FatalErrorException.php @ 13:5fb285c0d0e3

Update Drupal core to 8.4.7 via Composer. Security update; I *think* we've been lucky to get away with this so far, as we don't support self-registration which seems to be used by the so-called "drupalgeddon 2" attack that 8.4.5 was vulnerable to.
author Chris Cannam
date Mon, 23 Apr 2018 09:33:26 +0100
parents
children 129ea1e6d783
rev   line source
Chris@13 1 <?php
Chris@13 2
Chris@13 3 /*
Chris@13 4 * This file is part of Psy Shell.
Chris@13 5 *
Chris@13 6 * (c) 2012-2018 Justin Hileman
Chris@13 7 *
Chris@13 8 * For the full copyright and license information, please view the LICENSE
Chris@13 9 * file that was distributed with this source code.
Chris@13 10 */
Chris@13 11
Chris@13 12 namespace Psy\Exception;
Chris@13 13
Chris@13 14 /**
Chris@13 15 * A "fatal error" Exception for Psy.
Chris@13 16 */
Chris@13 17 class FatalErrorException extends \ErrorException implements Exception
Chris@13 18 {
Chris@13 19 private $rawMessage;
Chris@13 20
Chris@13 21 /**
Chris@13 22 * Create a fatal error.
Chris@13 23 *
Chris@13 24 * @param string $message (default: "")
Chris@13 25 * @param int $code (default: 0)
Chris@13 26 * @param int $severity (default: 1)
Chris@13 27 * @param string $filename (default: null)
Chris@13 28 * @param int $lineno (default: null)
Chris@13 29 * @param \Exception $previous (default: null)
Chris@13 30 */
Chris@13 31 public function __construct($message = '', $code = 0, $severity = 1, $filename = null, $lineno = null, $previous = null)
Chris@13 32 {
Chris@13 33 // Since these are basically always PHP Parser Node line numbers, treat -1 as null.
Chris@13 34 if ($lineno === -1) {
Chris@13 35 $lineno = null;
Chris@13 36 }
Chris@13 37
Chris@13 38 $this->rawMessage = $message;
Chris@13 39 $message = sprintf('PHP Fatal error: %s in %s on line %d', $message, $filename ?: "eval()'d code", $lineno);
Chris@13 40 parent::__construct($message, $code, $severity, $filename, $lineno, $previous);
Chris@13 41 }
Chris@13 42
Chris@13 43 /**
Chris@13 44 * Return a raw (unformatted) version of the error message.
Chris@13 45 *
Chris@13 46 * @return string
Chris@13 47 */
Chris@13 48 public function getRawMessage()
Chris@13 49 {
Chris@13 50 return $this->rawMessage;
Chris@13 51 }
Chris@13 52 }