Bug 1029504 - remove an incorrect assertion on XPCOM services being available, that failed when triggered late by the CC - r=smaug CLOSED TREE
authorBenoit Jacob <bjacob@mozilla.com>
Tue, 24 Jun 2014 09:06:57 -0400
changeset 190419 de2f8eca84b1afee1f5e286aa1874a7823ebf18f
parent 190418 5a8e5ad43d90068d41d0094c40829c968a3274f0
child 190420 4c3883620096f70bda18d53d38c654bc518bb0df
push id27004
push useremorley@mozilla.com
push dateTue, 24 Jun 2014 15:52:34 +0000
treeherdermozilla-central@7b174d47f3cc [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerssmaug
bugs1029504
milestone33.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1029504 - remove an incorrect assertion on XPCOM services being available, that failed when triggered late by the CC - r=smaug CLOSED TREE
content/canvas/src/WebGLContext.cpp
--- a/content/canvas/src/WebGLContext.cpp
+++ b/content/canvas/src/WebGLContext.cpp
@@ -150,18 +150,19 @@ WebGLObserver::UnregisterMemoryPressureE
 {
     if (!mContext) {
         return;
     }
 
     nsCOMPtr<nsIObserverService> observerService =
         mozilla::services::GetObserverService();
 
-    MOZ_ASSERT(observerService);
-
+    // Do not assert on observerService here. This might be triggered by
+    // the cycle collector at a late enough time, that XPCOM services are
+    // no longer available. See bug 1029504.
     if (observerService) {
         observerService->RemoveObserver(this, "memory-pressure");
     }
 }
 
 NS_IMETHODIMP
 WebGLObserver::Observe(nsISupports* aSubject,
                        const char* aTopic,