nsCOMPtr<nsITimer> kungFuDeathGrip = timer;
void process_timers(nsVoidArray *array){  int ret;  PRInt32 count = array->Count();    if (count == 0)    return;    nsTimerGtk *timer;  int i;  struct timeval tv;  gettimeofday(&tv, NULL);    for( i = count-1; i >= 0; i--) {    timer = (nsTimerGtk*)array->ElementAt(i);    if (timer) {      if (((timer->mSchedTime + timer->mDelay) <= tv)) {        ret = timer->FireTimeout();        if( ret == 0 ) {          array->RemoveElement(timer);        } else {          struct timeval ntv;          gettimeofday(&ntv, NULL);          timer->mSchedTime = ntv;        }      }    }  }}