diff --git a/content/html/content/crashtests/605264.html b/content/html/content/crashtests/605264.html new file mode 100644 index 00000000000..3c1db3578c2 --- /dev/null +++ b/content/html/content/crashtests/605264.html @@ -0,0 +1,8 @@ + + diff --git a/content/html/content/crashtests/crashtests.list b/content/html/content/crashtests/crashtests.list index 660218d61b2..f9f41d3971d 100644 --- a/content/html/content/crashtests/crashtests.list +++ b/content/html/content/crashtests/crashtests.list @@ -21,6 +21,7 @@ load 590387.html load 596785-1.html load 596785-2.html load 604807.html +load 605264.html load 606430-1.html load 602117.html load 613027.html diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/content/src/nsHTMLMediaElement.cpp index 59727b6bd1f..c335d35b9f3 100644 --- a/content/html/content/src/nsHTMLMediaElement.cpp +++ b/content/html/content/src/nsHTMLMediaElement.cpp @@ -2397,6 +2397,8 @@ void nsHTMLMediaElement::DoRemoveSelfReference() nsresult nsHTMLMediaElement::Observe(nsISupports* aSubject, const char* aTopic, const PRUnichar* aData) { + NS_ENSURE_TRUE(nsContentUtils::IsCallerChrome(), NS_ERROR_NOT_AVAILABLE); + if (strcmp(aTopic, NS_XPCOM_SHUTDOWN_OBSERVER_ID) == 0) { mShuttingDown = PR_TRUE; AddRemoveSelfReference();