From dad27b812be09f79ffc5b68e188b2148ad35aa83 Mon Sep 17 00:00:00 2001
From: Dominik Hebeler <dominik@suma-ev.de>
Date: Tue, 27 Oct 2020 12:48:16 +0100
Subject: [PATCH] fixed waiting for all engines when main engines are in cache

---
 app/MetaGer.php | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/app/MetaGer.php b/app/MetaGer.php
index 5834d96df..fb8dd7677 100644
--- a/app/MetaGer.php
+++ b/app/MetaGer.php
@@ -939,7 +939,7 @@ class MetaGer
         $mainEngines = $this->sumaFile->foki->{$this->fokus}->main;
         foreach ($mainEngines as $mainEngine) {
             foreach ($engines as $engine) {
-                if ($engine->name === $mainEngine && !$engine->loaded) {
+                if ($engine->name === $mainEngine) {
                     $enginesToWaitFor[] = $engine->hash;
                 }
             }
@@ -950,6 +950,17 @@ class MetaGer
             foreach ($engines as $engine) {
                 $enginesToWaitFor[] = $engine->hash;
             }
+        } else {
+            $newEnginesToWaitFor = [];
+            // Don't wait for engines that are already loaded in Cache
+            foreach ($enginesToWaitFor as $engineToWaitFor) {
+                foreach ($engines as $engine) {
+                    if ($engine->hash === $engineToWaitFor && !$engine->loaded) {
+                        $newEnginesToWaitFor[] = $engineToWaitFor;
+                    }
+                }
+            }
+            $enginesToWaitFor = $newEnginesToWaitFor;
         }
 
         $timeStart = microtime(true);
@@ -1213,7 +1224,7 @@ class MetaGer
         }
     }
 
-     public function createQuicktips()
+    public function createQuicktips()
     {
         # Die quicktips werden als job erstellt und zur Abarbeitung freigegeben
         $quicktips = new \App\Models\Quicktips\Quicktips($this->q, LaravelLocalization::getCurrentLocale(), $this->getTime());
-- 
GitLab