static BOOL bCanEnter = TRUE;
void CALLBACK FireTimeout(HWND aWindow,                           UINT aMessage,                           UINT aTimerID,                           DWORD aTime){  static BOOL bCanEnter = TRUE;  //  Don't allow old timer messages in here.  if(aMessage != WM_TIMER)    {    PR_ASSERT(0);    return;  }  if(aTimerID != TimerImpl::gWindowsTimer)   {    return;  }    //  Block only one entry into this function, or else.  if(bCanEnter)   {    bCanEnter = FALSE;    // see if we need to fork off any timeout functions    if(TimerImpl::gTimerList)    {      TimerImpl::ProcessTimeouts(aTime);    }    bCanEnter = TRUE;  }}