diff --git a/mozilla/xpcom/threads/nsThread.cpp b/mozilla/xpcom/threads/nsThread.cpp index 9d291840fe4..13e51583b0b 100644 --- a/mozilla/xpcom/threads/nsThread.cpp +++ b/mozilla/xpcom/threads/nsThread.cpp @@ -467,7 +467,8 @@ nsThread::ProcessNextEvent(PRBool mayWait, PRBool *result) NS_ENSURE_STATE(PR_GetCurrentThread() == mThread); - if (sGlobalObserver) + PRBool notifyGlobalObserver = (sGlobalObserver != nsnull); + if (notifyGlobalObserver) sGlobalObserver->OnProcessNextEvent(this, mayWait && !ShuttingDown(), mRunningEvent); @@ -496,7 +497,7 @@ nsThread::ProcessNextEvent(PRBool mayWait, PRBool *result) if (obs) obs->AfterProcessNextEvent(this, mRunningEvent); - if (sGlobalObserver) + if (notifyGlobalObserver && sGlobalObserver) sGlobalObserver->AfterProcessNextEvent(this, mRunningEvent); return rv;