summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2010-10-01 08:08:05 +0000
committeralecpl <alec@alec.pl>2010-10-01 08:08:05 +0000
commit928bcaedc0013a7b653647750108a8ab2c37d2a6 (patch)
tree0111916ca098a74f971d8ebf600b6fc63a7e968f
parent249db18585959c9ab3e09b6e91f8fec7cd32e9d0 (diff)
- Fix handling of Thunderbird's vCards (#1487024)
-rw-r--r--CHANGELOG1
-rw-r--r--program/include/rcube_vcard.php6
2 files changed, 5 insertions, 2 deletions
diff --git a/CHANGELOG b/CHANGELOG
index d89ab2b86..5d54de0f9 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -15,6 +15,7 @@ CHANGELOG Roundcube Webmail
- Plugin API: improved 'abort' flag handling, added 'result' item in some hooks (#1486914)
- Fix: contact group input is empty when using rename action more than once on the same group record
- Fix "Server Error! (Not Found)" when using utils/save-pref action (#1487023)
+- Fix handling of Thunderbird's vCards (#1487024)
RELEASE 0.4.1
-------------
diff --git a/program/include/rcube_vcard.php b/program/include/rcube_vcard.php
index 0eb7a780d..9bbc32b3c 100644
--- a/program/include/rcube_vcard.php
+++ b/program/include/rcube_vcard.php
@@ -218,7 +218,9 @@ class rcube_vcard
if ($in_vcard_block && !empty($line))
$vcard_block .= $line . "\n";
- if (trim($line) == 'END:VCARD') {
+ $line = trim($line);
+
+ if (preg_match('/^END:VCARD$/i', $line)) {
// parse vcard
$obj = new rcube_vcard(self::cleanup($vcard_block), $charset);
if (!empty($obj->displayname))
@@ -226,7 +228,7 @@ class rcube_vcard
$in_vcard_block = false;
}
- else if (trim($line) == 'BEGIN:VCARD') {
+ else if (preg_match('/^BEGIN:VCARD$/i', $line)) {
$vcard_block = $line . "\n";
$in_vcard_block = true;
}