diff --git a/views/feeds_views_handler_field_log_message.inc b/views/feeds_views_handler_field_log_message.inc
index 6fcdeeafb534fda50ee8188c04e1512fe666400f..5003444a74cd712a119fe447d3b5f9f1fe68952b 100644
--- a/views/feeds_views_handler_field_log_message.inc
+++ b/views/feeds_views_handler_field_log_message.inc
@@ -2,24 +2,31 @@
 
 /**
  * @file
- * Views handler for displaying a log message.
+ * Contains feeds_views_handler_field_log_message.
  */
 
+/**
+ * Views handler for displaying a log message.
+ */
 class feeds_views_handler_field_log_message extends views_handler_field {
 
   /**
    * Override parent::render().
    */
-  function render($values) {
+  public function render($values) {
     $message = $values->{$this->field_alias};
     $variables = unserialize($values->{$this->aliases['variables']});
-    return t($message, $variables);
+
+    // Messages that are too long may generate a PDO exception when calling t()
+    // if Drupal tries to add them in {locales_source} table.
+    return t(truncate_utf8($message, 65000, TRUE, TRUE), $variables);
   }
 
   /**
    * Disallow advanced rendering.
    */
-  function allow_advanced_render() {
+  public function allow_advanced_render() {
     return FALSE;
   }
+
 }