From 114d32f2631affa5ec98437c1a0faac29f8e2247 Mon Sep 17 00:00:00 2001
From: Henning Leutz <leutz@pcsg.de>
Date: Tue, 2 Feb 2021 05:33:43 +0100
Subject: [PATCH] fix: dont use objects like Project for the cache name

---
 src/QUI/Bricks/Brick.php | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)

diff --git a/src/QUI/Bricks/Brick.php b/src/QUI/Bricks/Brick.php
index 32934c3..cb70131 100644
--- a/src/QUI/Bricks/Brick.php
+++ b/src/QUI/Bricks/Brick.php
@@ -247,15 +247,9 @@ public function check(): Brick
     protected function createBrickHash(): string
     {
         $attributes = $this->getAttributes();
-        $hashParams = [];
-
-        foreach ($attributes as $name => $value) {
-            if (\is_object($value)) {
-                continue;
-            }
-
-            $hashParams[$name] = \serialize($value);
-        }
+        $hashParams = \array_filter($attributes, function ($entry) {
+            return \is_object($entry) === false;
+        });
 
         $hash = \serialize($hashParams);
         $hash = \md5($hash);
@@ -272,11 +266,16 @@ protected function createBrickHash(): string
      */
     public function create(): string
     {
+        $settings = $this->getSettings();
+        $settings = \array_filter($settings, function ($entry) {
+            return \is_object($entry) === false;
+        });
+
         $cacheName = Manager::getBrickCacheNamespace()
                      .\md5($this->getType())
                      .'/'
                      .$this->hash
-                     .'/'.\md5(\serialize($this->getSettings()));
+                     .'/'.\md5(\serialize($settings));
 
         if ($this->getAttribute('cacheable')) {
             try {
-- 
GitLab