diff --git a/symphony/lib/toolkit/fields/field.taglist.php b/symphony/lib/toolkit/fields/field.taglist.php
index <HASH>..<HASH> 100644
--- a/symphony/lib/toolkit/fields/field.taglist.php
+++ b/symphony/lib/toolkit/fields/field.taglist.php
@@ -404,12 +404,12 @@ class FieldTagList extends Field implements ExportableField, ImportableField
         $message = $status = null;
         $modes = (object)$this->getImportModes();
 
-        if (!is_array($data)) {
-            $data = array($data);
+        if (is_array($data)) {
+            $data = implode(', ', $data);
         }
 
         if ($mode === $modes->getValue) {
-            return implode(', ', $data);
+            return $data;
         } elseif ($mode === $modes->getPostdata) {
             return $this->processRawFieldData($data, $status, $message, true, $entry_id);
         }
The tag list field was preparing a value for import as an array, then passing it to preg_split which expects a string.