diff --git a/modules/aggregator/aggregator.processor.inc b/modules/aggregator/aggregator.processor.inc index 6eb2c66..79261b6 100644 --- a/modules/aggregator/aggregator.processor.inc +++ b/modules/aggregator/aggregator.processor.inc @@ -37,6 +37,9 @@ function aggregator_aggregator_process($feed) { if (!$item['timestamp']) { $item['timestamp'] = isset($entry->timestamp) ? $entry->timestamp : REQUEST_TIME; } + + // Make sure the item title fits in 255 varchar column. + $item['title'] = truncate_utf8($item['title'], 255, TRUE, TRUE); aggregator_save_item(array('iid' => (isset($entry->iid) ? $entry->iid : ''), 'fid' => $feed->fid, 'timestamp' => $item['timestamp'], 'title' => $item['title'], 'link' => $item['link'], 'author' => $item['author'], 'description' => $item['description'], 'guid' => $item['guid'])); } } diff --git a/modules/aggregator/tests/aggregator_test_rss091.xml b/modules/aggregator/tests/aggregator_test_rss091.xml index 1fd5320..f39a273 100644 --- a/modules/aggregator/tests/aggregator_test_rss091.xml +++ b/modules/aggregator/tests/aggregator_test_rss091.xml @@ -22,7 +22,7 @@ First example feed item description. - Second example feed item title + Second example feed item title. This title is extremely long so that it exceeds the 255 character limit for titles in feed item storage. In fact it's so long that this sentence isn't long enough so I'm rambling a bit to make it longer, nearly there now. Ah now it's long enough so I'll shut up. http://example.com/example-turns-two Second example feed item description.