From bd0551b22076b82a6d49e9f7a2b2e0c90a1b2326 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Fri, 05 Feb 2016 07:25:27 -0500
Subject: [PATCH] Secure also downloads of addressbook exports, managesieve script exports and Enigma keys exports

---
 program/lib/Roundcube/rcube_csv2vcard.php |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/program/lib/Roundcube/rcube_csv2vcard.php b/program/lib/Roundcube/rcube_csv2vcard.php
index 5f6ccd1..ef85507 100644
--- a/program/lib/Roundcube/rcube_csv2vcard.php
+++ b/program/lib/Roundcube/rcube_csv2vcard.php
@@ -1,6 +1,6 @@
 <?php
 
-/*
+/**
  +-----------------------------------------------------------------------+
  | This file is part of the Roundcube Webmail client                     |
  | Copyright (C) 2008-2012, The Roundcube Dev Team                       |
@@ -394,7 +394,9 @@
     }
 
     /**
+     * Import contacts from CSV file
      *
+     * @param string $csv Content of the CSV file
      */
     public function import($csv)
     {
@@ -457,6 +459,8 @@
     }
 
     /**
+     * Export vCards
+     *
      * @return array rcube_vcard List of vcards
      */
     public function export()
@@ -577,9 +581,10 @@
                 if ($value !== null && $value !== '') {
                     foreach (array($type, '*') as $_type) {
                         if ($data_idx = $this->gmail_label_map[$key][$item_key][$_type]) {
+                            $value = explode(' ::: ', $value);
+
                             if (!empty($contact[$data_idx])) {
-                                $contact[$data_idx]   = (array) $contact[$data_idx];
-                                $contact[$data_idx][] = $value;
+                                $contact[$data_idx]   = array_merge((array) $contact[$data_idx], $value);
                             }
                             else {
                                 $contact[$data_idx] = $value;

--
Gitblit v1.9.1