if ((mFlags & NS_SINK_FLAG_CAN_INTERRUPT_PARSER) && (mDelayTimer.HasExceeded(mMaxTokenProcessingTime))) { return NS_ERROR_HTMLPARSER_INTERRUPTED;
if (mFlags & NS_SINK_FLAG_CAN_INTERRUPT_PARSER) {  #ifdef NS_DEBUG PRInt32 oldMaxTokenProcessingTime = GetMaxTokenProcessingTime(); #endif  PRUint32 currentTime = PR_IntervalToMicroseconds(PR_IntervalNow());      if (mDocument) { nsCOMPtr<nsIPresShell> shell; mDocument->GetShellAt(0, getter_AddRefs(shell)); if (shell) { nsCOMPtr<nsIViewManager> vm; shell->GetViewManager(getter_AddRefs(vm)); PRUint32 eventTime; nsresult rv = vm->GetLastUserEventTime(eventTime); if (NS_SUCCEEDED(rv)) {  if ((currentTime - eventTime) < NS_STATIC_CAST(PRUint32, mDynamicIntervalSwitchThreshold)) {    mFlags |= NS_SINK_FLAG_DYNAMIC_LOWER_VALUE; } else {    mFlags &= ~NS_SINK_FLAG_DYNAMIC_LOWER_VALUE; } } } }  #ifdef NS_DEBUG PRInt32 newMaxTokenProcessingTime = GetMaxTokenProcessingTime();  if (newMaxTokenProcessingTime != oldMaxTokenProcessingTime) {  } #endif  if ((currentTime - mDelayTimerStart) > NS_STATIC_CAST(PRUint32, GetMaxTokenProcessingTime())) { return NS_ERROR_HTMLPARSER_INTERRUPTED; }
HTMLContentSink::DidProcessAToken(void) {  if ((mFlags & NS_SINK_FLAG_CAN_INTERRUPT_PARSER) && (mDelayTimer.HasExceeded(mMaxTokenProcessingTime))) {    return NS_ERROR_HTMLPARSER_INTERRUPTED;  }  return NS_OK;}