From c52643df21e4b4ad12e5c1aa7d4e05c45c852326 Mon Sep 17 00:00:00 2001 From: Jared Hancock <jared@osticket.com> Date: Fri, 30 May 2014 18:58:15 -0500 Subject: [PATCH] Detect and squelch loops in topic relationships --- include/class.topic.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/include/class.topic.php b/include/class.topic.php index 7ef0ad412..2c9fff508 100644 --- a/include/class.topic.php +++ b/include/class.topic.php @@ -212,8 +212,12 @@ class Topic { if ($publicOnly && !$info['public']) continue; $name = $info['topic']; + $loop = array($id=>true); while ($info['pid'] && ($info = $topics[$info['pid']])) { $name = sprintf('%s / %s', $info['topic'], $name); + if (isset($loop[$info['pid']])) + break; + $loop[$info['pid']] = true; } $names[$id] = $name; } -- GitLab