diff options
author | alecpl <alec@alec.pl> | 2010-02-05 13:05:25 +0000 |
---|---|---|
committer | alecpl <alec@alec.pl> | 2010-02-05 13:05:25 +0000 |
commit | f6b145d5612f7605b36deee8858565611126bee8 (patch) | |
tree | 21fcbd629377675db1d7df57e8a27899ab87f208 | |
parent | b620493a4bfdfdabc055b7d8cffa4af432e96977 (diff) |
- optimise _id2uid(), prevent from array_flip() warnings
-rw-r--r-- | program/include/rcube_imap.php | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/program/include/rcube_imap.php b/program/include/rcube_imap.php index 9137ada99..6ab0b6a88 100644 --- a/program/include/rcube_imap.php +++ b/program/include/rcube_imap.php @@ -3001,15 +3001,12 @@ class rcube_imap { if (!$mbox_name) $mbox_name = $this->mailbox; - - $index = array_flip((array)$this->uid_id_map[$mbox_name]); - if (isset($index[$id])) - $uid = $index[$id]; - else - { - $uid = iil_C_ID2UID($this->conn, $mbox_name, $id); - $this->uid_id_map[$mbox_name][$uid] = $id; - } + + if ($uid = array_search($id, (array)$this->uid_id_map[$mbox_name])) + return $uid; + + $uid = iil_C_ID2UID($this->conn, $mbox_name, $id); + $this->uid_id_map[$mbox_name][$uid] = $id; return $uid; } |