TimerImpl* timer = *iter;
TimerImpl* timer = *iter;  NS_ASSERTION(timer->IsGoodTimer(), "Bad timer!");
void  TimerPeriodical::RepeatAction( const EventRecord &inMacEvent){  list<TimerImpl*>::iterator iter = mTimers.begin();  list<TimerImpl*> fireList;    while (iter != mTimers.end())  {    TimerImpl* timer = *iter;     if (timer->GetFireTime() <= inMacEvent.when)    {      mTimers.erase(iter++);      NS_ADDREF(timer);      fireList.push_back(timer);    }    else      {        iter++;      }  }  if ( mTimers.size() == 0 )     StopRepeating();       for (iter=fireList.begin(); iter!=fireList.end(); iter++)  {    (*iter)->Fire();    NS_RELEASE(*iter);  }}