diff --git a/office_hours.feeds.inc b/office_hours.feeds.inc
index 87f5419..78d7f9f 100644
--- a/office_hours.feeds.inc
+++ b/office_hours.feeds.inc
@@ -78,6 +78,7 @@ function office_hours_feeds_set_target($source, $entity, $target, $feed_element)
   static $sv_vid = NULL; // remember current entity-id
   static $sv_day = 0; // remember current day
   static $sv_office_hours = NULL; // collect OH while building
+  static $sv_field_name = NULL; // remember name of field that is set in target.
   static $sv_index = NULL; // index of array
 
   if (is_array($feed_element)) {
@@ -95,9 +96,10 @@ function office_hours_feeds_set_target($source, $entity, $target, $feed_element)
   switch ($sub_field) {
     case 'day':
       // each OfficeHours-feeds line MUST start with a day-field; set new line
-        if ($entity->vid != $sv_vid) {
-           // this is a new entity
+        if ($entity->vid != $sv_vid || $field_name != $sv_field_name) {
+          // This is a new entity, or another field within the same entity.
           $sv_vid = $entity->vid;
+          $sv_field_name = $field_name;
           unset($entity->{$field_name});  // clear officeHours field - this should have been done before.
           $sv_index = 0;
         }
