171a172 > _new_touch = true; 177a179 > _new_touch = false; 252c254,264 < where = events.erase (after, far); --- > if(_new_touch) { > where = far; > last_rt_insertion_point = where; > > if((*where)->when == when) { > (*where)->value = value; > done = true; > } > } else { > where = events.erase (after, far); > } 259,260c271,275 < < if (last_rt_insertion_point != events.begin() && (*last_rt_insertion_point)->value == value) { --- > > iterator previous = last_rt_insertion_point; > --previous; > > if (last_rt_insertion_point != events.begin() && (*last_rt_insertion_point)->value == value && (*previous)->value == value) { 274a290,291 > > _new_touch = false;