From 35ca3085ce7856f30594791207871d88633b259d Mon Sep 17 00:00:00 2001 From: Ere Maijala <ere.maijala@helsinki.fi> Date: Thu, 5 Jul 2018 15:00:34 +0300 Subject: [PATCH] Guard against circular references when building record hierarchy from Solr. (#1213) --- module/VuFind/src/VuFind/Hierarchy/TreeDataSource/Solr.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/module/VuFind/src/VuFind/Hierarchy/TreeDataSource/Solr.php b/module/VuFind/src/VuFind/Hierarchy/TreeDataSource/Solr.php index 451fea283bb..1fe4a1277dd 100644 --- a/module/VuFind/src/VuFind/Hierarchy/TreeDataSource/Solr.php +++ b/module/VuFind/src/VuFind/Hierarchy/TreeDataSource/Solr.php @@ -195,6 +195,10 @@ class Solr extends AbstractBase $parents = isset($current->hierarchy_parent_id) ? $current->hierarchy_parent_id : []; foreach ($parents as $parentId) { + if ($current->id === $parentId) { + // Ignore circular reference + continue; + } if (!isset($map[$parentId])) { $map[$parentId] = [$current]; } else { -- GitLab