Mercurial > hg > isophonics-drupal-site
diff vendor/symfony/validator/Mapping/Loader/YamlFileLoader.php @ 14:1fec387a4317
Update Drupal core to 8.5.2 via Composer
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:46:53 +0100 |
parents | 4c8ae668cc8c |
children | 129ea1e6d783 |
line wrap: on
line diff
--- a/vendor/symfony/validator/Mapping/Loader/YamlFileLoader.php Mon Apr 23 09:33:26 2018 +0100 +++ b/vendor/symfony/validator/Mapping/Loader/YamlFileLoader.php Mon Apr 23 09:46:53 2018 +0100 @@ -14,6 +14,7 @@ use Symfony\Component\Validator\Mapping\ClassMetadata; use Symfony\Component\Yaml\Exception\ParseException; use Symfony\Component\Yaml\Parser as YamlParser; +use Symfony\Component\Yaml\Yaml; /** * Loads validation metadata from a YAML file. @@ -114,10 +115,18 @@ */ private function parseFile($path) { + $prevErrorHandler = set_error_handler(function ($level, $message, $script, $line) use ($path, &$prevErrorHandler) { + $message = E_USER_DEPRECATED === $level ? preg_replace('/ on line \d+/', ' in "'.$path.'"$0', $message) : $message; + + return $prevErrorHandler ? $prevErrorHandler($level, $message, $script, $line) : false; + }); + try { - $classes = $this->yamlParser->parse(file_get_contents($path)); + $classes = $this->yamlParser->parseFile($path, Yaml::PARSE_CONSTANT); } catch (ParseException $e) { throw new \InvalidArgumentException(sprintf('The file "%s" does not contain valid YAML.', $path), 0, $e); + } finally { + restore_error_handler(); } // empty file