From f98a86fd936580847406d49afdaf01c67553c5e4 Mon Sep 17 00:00:00 2001
From: James Silver <jamsilver@gmail.com>
Date: Mon, 9 May 2011 12:56:38 +0100
Subject: [PATCH] Issue #1151438: Fixed 'String data, right truncated' - field mapper handling of long text fields

---
 mappers/field.inc |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/mappers/field.inc b/mappers/field.inc
index 77c0f6b..3183a4f 100644
--- a/mappers/field.inc
+++ b/mappers/field.inc
@@ -72,6 +72,16 @@ function field_feeds_set_target_text($source, $entity, $target, $value) {
   if (!is_array($value)) {
     $value = array($value);
   }
+  // Need to trim the text if required.
+  if ($field = field_info_field($target)) {
+    if (!empty($field['settings']['max_length'])) {
+      foreach ($value as $k => $v) {
+        if (strlen($v) > $field['settings']['max_length']) {
+          $value[$k] = substr($v, 0, $field['settings']['max_length']);
+        }
+      }
+    }
+  }
   _field_feeds_set_target($source, $entity, $target, $value, TRUE);
 }
 
-- 
1.7.1

