diff options
author | Aleksander Machniak <alec@alec.pl> | 2012-07-25 16:21:26 +0200 |
---|---|---|
committer | Aleksander Machniak <alec@alec.pl> | 2012-07-25 16:21:26 +0200 |
commit | 39797631d48659e42c0d09b529b88eb372a82f04 (patch) | |
tree | 5cfbbeb36e610a750d816b2bf34918b680003549 /program/include | |
parent | 0d80fad9e09c88cb605587e4453d560f6ae5b661 (diff) |
Support COPYUID responses (store it in $data property)
Diffstat (limited to 'program/include')
-rw-r--r-- | program/include/rcube_imap_generic.php | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/program/include/rcube_imap_generic.php b/program/include/rcube_imap_generic.php index 197164dfe..bf9712350 100644 --- a/program/include/rcube_imap_generic.php +++ b/program/include/rcube_imap_generic.php @@ -313,9 +313,13 @@ class rcube_imap_generic else { $this->resultcode = null; // parse response for [APPENDUID 1204196876 3456] - if (preg_match("/^\[APPENDUID [0-9]+ ([0-9,:*]+)\]/i", $str, $m)) { + if (preg_match("/^\[APPENDUID [0-9]+ ([0-9]+)\]/i", $str, $m)) { $this->data['APPENDUID'] = $m[1]; } + // parse response for [COPYUID 1204196876 3456:3457 123:124] + else if (preg_match("/^\[COPYUID [0-9]+ ([0-9,:]+) ([0-9,:]+)\]/i", $str, $m)) { + $this->data['COPYUID'] = array($m[1], $m[2]); + } } $this->result = $str; @@ -1950,6 +1954,9 @@ class rcube_imap_generic */ function copy($messages, $from, $to) { + // Clear last COPYUID data + unset($this->data['COPYUID']); + if (!$this->select($from)) { return false; } |