From 9d3180a7e23cedc63fbf269c1227ce9bbe3e3005 Mon Sep 17 00:00:00 2001 From: Nicolas Grekas Date: Wed, 30 Jan 2019 09:41:20 +0100 Subject: [PATCH] [Config] ensure moving away from Serializable wont break cache:clear --- src/Symfony/Component/Config/ResourceCheckerConfigCache.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Symfony/Component/Config/ResourceCheckerConfigCache.php b/src/Symfony/Component/Config/ResourceCheckerConfigCache.php index 933cf0f9c7b8..092b95bf0188 100644 --- a/src/Symfony/Component/Config/ResourceCheckerConfigCache.php +++ b/src/Symfony/Component/Config/ResourceCheckerConfigCache.php @@ -156,10 +156,11 @@ private function safelyUnserialize($file) { $e = null; $meta = false; + $content = file_get_contents($file); $signalingException = new \UnexpectedValueException(); $prevUnserializeHandler = ini_set('unserialize_callback_func', ''); $prevErrorHandler = set_error_handler(function ($type, $msg, $file, $line, $context = []) use (&$prevErrorHandler, $signalingException) { - if (E_WARNING === $type && 'Class __PHP_Incomplete_Class has no unserializer' === $msg) { + if (__FILE__ === $file) { throw $signalingException; } @@ -167,7 +168,7 @@ private function safelyUnserialize($file) }); try { - $meta = unserialize(file_get_contents($file)); + $meta = unserialize($content); } catch (\Error $e) { } catch (\Exception $e) { }