From b231c8f6accb7c04461ab8364016d0abbe81f82e Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Mon, 07 Jul 2014 13:06:10 -0400
Subject: [PATCH] Fix images import from various vCard formats (#1489977)

---
 tests/Framework/VCard.php |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/tests/Framework/VCard.php b/tests/Framework/VCard.php
index 3353b5b..0a34fc5 100644
--- a/tests/Framework/VCard.php
+++ b/tests/Framework/VCard.php
@@ -107,6 +107,22 @@
         // ENCODING=b case (#1488683)
         $this->assertEquals("/9j/4AAQSkZJRgABAQA", substr(base64_encode($vcard['photo']), 0, 19), "Photo decoding");
         $this->assertEquals("Müller", $vcard['surname'], "Unicode characters");
+
+        $input = str_replace('ENCODING=b:', 'ENCODING=base64;jpeg:', $input);
+
+        $vcards = rcube_vcard::import($input);
+        $vcard = $vcards[0]->get_assoc();
+
+        // ENCODING=base64 case (#1489977)
+        $this->assertEquals("/9j/4AAQSkZJRgABAQA", substr(base64_encode($vcard['photo']), 0, 19), "Photo decoding");
+
+        $input = str_replace('PHOTO;ENCODING=base64;jpeg:', 'PHOTO:data:image/jpeg;base64,', $input);
+
+        $vcards = rcube_vcard::import($input);
+        $vcard = $vcards[0]->get_assoc();
+
+        // vcard4.0 "PHOTO:data:image/jpeg;base64," case (#1489977)
+        $this->assertEquals("/9j/4AAQSkZJRgABAQA", substr(base64_encode($vcard['photo']), 0, 19), "Photo decoding");
     }
 
     function test_encodings()

--
Gitblit v1.9.1