Thomas Bruederli
2014-05-21 939380da27f3502847fc1f18e8b67f3fb6d6742f
Don't list empty (nil) metadata entries to save memory anc caching space
1 files modified
10 ■■■■■ changed files
program/lib/Roundcube/rcube_imap_generic.php 10 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_imap_generic.php
@@ -3143,7 +3143,8 @@
                    if (isset($mbox) && is_array($data[$i])) {
                        $size_sub = count($data[$i]);
                        for ($x=0; $x<$size_sub; $x++) {
                            $result[$mbox][$data[$i][$x]] = $data[$i][++$x];
                            if ($data[$i][$x+1] !== null)
                                $result[$mbox][$data[$i][$x]] = $data[$i][++$x];
                        }
                        unset($data[$i]);
                    }
@@ -3161,7 +3162,8 @@
                        }
                    }
                    else if (isset($mbox)) {
                        $result[$mbox][$data[$i]] = $data[++$i];
                        if ($data[$i+1] !== null)
                            $result[$mbox][$data[$i]] = $data[++$i];
                        unset($data[$i]);
                        unset($data[$i-1]);
                    }
@@ -3306,10 +3308,10 @@
                        for ($x=0, $len=count($attribs); $x<$len;) {
                            $attr  = $attribs[$x++];
                            $value = $attribs[$x++];
                            if ($attr == 'value.priv') {
                            if ($attr == 'value.priv' && $value !== null) {
                                $result[$mbox]['/private' . $entry] = $value;
                            }
                            else if ($attr == 'value.shared') {
                            else if ($attr == 'value.shared' && $value !== null) {
                                $result[$mbox]['/shared' . $entry] = $value;
                            }
                        }