Index: mappers/feedapi_mapper_link.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/feedapi_mapper/mappers/Attic/feedapi_mapper_link.inc,v
retrieving revision 1.1.2.4.2.3
diff -u -p -r1.1.2.4.2.3 feedapi_mapper_link.inc
--- mappers/feedapi_mapper_link.inc	20 Apr 2009 13:31:04 -0000	1.1.2.4.2.3
+++ mappers/feedapi_mapper_link.inc	20 Apr 2009 13:41:41 -0000
@@ -1,5 +1,5 @@
 <?php
-// $Id: feedapi_mapper_link.inc,v 1.1.2.4.2.3 2009/04/20 13:31:04 alexb Exp $
+// $Id: feedapi_mapper_link.inc,v 1.1.2.4.2.2 2009/04/11 00:43:45 alexb Exp $
 
 /**
  * On behalf implementation of hook_feedapi_mapper for link module (CCK).
@@ -32,14 +32,22 @@ function link_feedapi_mapper($op, $node,
     // decided to map to and $field_element is the feed item element the user has decided to map.
     // We just need to put the two things together. The data structure here depends a lot on
     // CCK. We stick the value in $feed_element into $node->$field_name[0]['value'].
-    if (isset($node->$field_name)) {
-      $field = $node->$field_name;
+    if (!is_array($feed_element)) {
+      if (isset($node->$field_name)) {
+        $field = $node->$field_name;
+      }
+      else {
+        $field = array();
+      }
+      $field[count($field)]['url'] = link_validate_url($feed_element) ? $feed_element : NULL;
+      $node->$field_name = $field;
     }
     else {
-      $field = array();
+      $node->{$field_name} = array();
+      foreach ($feed_element as $k => $url) {
+        $node->{$field_name}[$k]['url'] = link_validate_url($url) ? $url : NULL;
+      }
     }
-    $field[count($field)]['url'] = link_validate_url($feed_element) ? $feed_element : NULL;
-    $node->$field_name = $field;
     return $node;
   }
 }
