? filename.patch
Index: calendar_ical/calendar-view-ical.tpl.php
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/calendar/calendar_ical/calendar-view-ical.tpl.php,v
retrieving revision 1.1.2.3
diff -u -p -r1.1.2.3 calendar-view-ical.tpl.php
--- calendar_ical/calendar-view-ical.tpl.php	10 Oct 2008 20:59:03 -0000	1.1.2.3
+++ calendar_ical/calendar-view-ical.tpl.php	6 Sep 2009 11:15:26 -0000
@@ -39,7 +41,7 @@ DTSTART;<?php print $event['timezone'] ?
 DTEND;<?php print $event['timezone'] ?>VALUE=DATE-TIME:<?php print($event['end'] . "\n") ?>
 <?php endif; ?>
 <?php if (!empty($event['rrule'])) : ?>
-RRULE;<?php print($event['rrule'] . "\n") ?>
+<?php print($event['rrule'] . "\n") ?>
 <?php endif; ?>
 <?php if (!empty($event['url'])): ?>
 URL;VALUE=URI:<?php print($event['url'] . "\n") ?>
Index: includes/calendar.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/calendar/includes/calendar.inc,v
retrieving revision 1.1.2.40
diff -u -p -r1.1.2.40 calendar.inc
--- includes/calendar.inc	11 May 2009 22:24:27 -0000	1.1.2.40
+++ includes/calendar.inc	6 Sep 2009 11:15:26 -0000
@@ -357,6 +357,7 @@ function calendar_build_nodes(&$view, &$
     $processed = array();
     $rrule_processed = array();
     foreach ($items as $pos => $item) {
+
       $delta = !empty($field['delta_field']) && !empty($item->{$field['delta_field']}) ? $item->{$field['delta_field']} : 0;
       $real_field = $field_name;
       if (substr($field['type'], 0, 3) == 'cck') {
@@ -368,8 +369,8 @@ function calendar_build_nodes(&$view, &$
       // When creating iCal feeds for repeating dates we don't want all
       // the multiple values, send only the first value.
       if (strstr($view->current_display, '_ical') && !empty($rrule_field) && !empty($item->$rrule_field)) {
-        if (!in_array($rrule_field, $rrule_processed)) {
-          $rrule_processed[] = $rrule_field;
+        if (!in_array($rrule_field + ':' + $item->nid, $rrule_processed)) {
+          $rrule_processed[] = $rrule_field + ':' + $item->nid;
         }
         else {
           continue;
