From 89b5e1ae6c8da59d27f7bb90e4d7858c84b46d4d Mon Sep 17 00:00:00 2001 From: Nickolas Nikolic Date: Fri, 14 Feb 2020 17:01:19 -0600 Subject: [PATCH 1/2] corrected unserialize issue Corrected issue producing error --- .../vendor/yiisoft/yii/framework/caching/CCache.php | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/common/lib/vendor/yiisoft/yii/framework/caching/CCache.php b/common/lib/vendor/yiisoft/yii/framework/caching/CCache.php index 88e4886..b8bf024 100644 --- a/common/lib/vendor/yiisoft/yii/framework/caching/CCache.php +++ b/common/lib/vendor/yiisoft/yii/framework/caching/CCache.php @@ -102,12 +102,9 @@ protected function generateUniqueKey($key) public function get($id) { $value = $this->getValue($this->generateUniqueKey($id)); - if($value===false || $this->serializer===false) - return $value; - if($this->serializer===null) - $value=unserialize($value); - else - $value=call_user_func($this->serializer[1], $value); + if($value===false || $this->serializer===false) return $value; + if($this->serializer===null) $value=unserialize($value); + else $value=call_user_func($this->serializer[1], $value); if(is_array($value) && (!$value[1] instanceof ICacheDependency || !$value[1]->getHasChanged())) { Yii::trace('Serving "'.$id.'" from cache','system.caching.'.get_class($this)); @@ -373,4 +370,4 @@ public function offsetUnset($id) { $this->delete($id); } -} \ No newline at end of file +} From 933391ebb09ba8742828d66b09862191b1205524 Mon Sep 17 00:00:00 2001 From: Nickolas Nikolic Date: Fri, 14 Feb 2020 17:05:41 -0600 Subject: [PATCH 2/2] corrected base64 cache issue --- common/lib/vendor/yiisoft/yii/framework/caching/CCache.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/lib/vendor/yiisoft/yii/framework/caching/CCache.php b/common/lib/vendor/yiisoft/yii/framework/caching/CCache.php index b8bf024..3259100 100644 --- a/common/lib/vendor/yiisoft/yii/framework/caching/CCache.php +++ b/common/lib/vendor/yiisoft/yii/framework/caching/CCache.php @@ -103,7 +103,7 @@ public function get($id) { $value = $this->getValue($this->generateUniqueKey($id)); if($value===false || $this->serializer===false) return $value; - if($this->serializer===null) $value=unserialize($value); + if($this->serializer===null) $value=unserialize(base64_decode($value)); else $value=call_user_func($this->serializer[1], $value); if(is_array($value) && (!$value[1] instanceof ICacheDependency || !$value[1]->getHasChanged())) {