Fix bug in long recipients list parsing for cases where recipient name contained @-char (#1490653)

pull/322/head
Aleksander Machniak 9 years ago
parent c10eae0884
commit 8dc756f319

@ -18,6 +18,7 @@ CHANGELOG Roundcube Webmail
- Fix missing language name in "Add to Dictionary" request in HTML mode (#1490634)
- Fix (again) security issue in DBMail driver of password plugin [CVE-2015-2181] (#1490643)
- Fix bug where Archive/Junk buttons were not active after page jump with select=all mode (#1490647)
- Fix bug in long recipients list parsing for cases where recipient name contained @-char (#1490653)
RELEASE 1.2-beta
----------------

@ -459,15 +459,19 @@ class rcube_smtp
}
$addresses = array();
$recipients = preg_replace('/[\s\t]*\r?\n/', '', $recipients);
$recipients = rcube_utils::explode_quoted_string(',', $recipients);
reset($recipients);
foreach ($recipients as $recipient) {
$a = rcube_utils::explode_quoted_string(' ', $recipient);
foreach ($a as $word) {
if (strpos($word, "@") > 0 && $word[strlen($word)-1] != '"') {
$word = preg_replace('/^<|>$/', '', trim($word));
if (in_array($word, $addresses) === false) {
$word = trim($word);
$len = strlen($word);
if ($len && strpos($word, "@") > 0 && $word[$len-1] != '"') {
$word = preg_replace('/^<|>$/', '', $word);
if (!in_array($word, $addresses)) {
array_push($addresses, $word);
}
}

Loading…
Cancel
Save