diff options
Diffstat (limited to 'program')
-rw-r--r-- | program/include/rcube_result_thread.php | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/program/include/rcube_result_thread.php b/program/include/rcube_result_thread.php index 09fa46522..b2325a499 100644 --- a/program/include/rcube_result_thread.php +++ b/program/include/rcube_result_thread.php @@ -475,16 +475,18 @@ class rcube_result_thread $items = explode(self::SEPARATOR_ITEM, $elem); $root = (int) array_shift($items); - $result[$elem] = $elem; - foreach ($items as $item) { - list($lv, $id) = explode(self::SEPARATOR_LEVEL, $item); + if ($root) { + $result[$root] = $root; + foreach ($items as $item) { + list($lv, $id) = explode(self::SEPARATOR_LEVEL, $item); $result[$id] = $root; + } } } // get only unique roots $result = array_filter($result); // make sure there are no nulls - $result = array_unique($result, SORT_NUMERIC); + $result = array_unique($result); // Re-sort raw data $result = array_fill_keys($result, null); |