Bug 844676 - Mark a video as still loading if we haven't yet created the ImageContainer, probably because the dedicated GPU isn't available yet. r=roc
☠☠ backed out by 153993320a45 ☠ ☠
authorJoe Drew <joe@drew.ca>
Fri, 03 May 2013 15:15:46 -0400
changeset 141731 5878a9a7c54083345f54051069c2ed7a1c336230
parent 141730 7ded7165ab8747234c14a5bb0a6c5b66c8f7522e
child 141732 c860539f82bbf52e173e256a078258b91dddf4bd
push id2579
push userakeybl@mozilla.com
push dateMon, 24 Jun 2013 18:52:47 +0000
treeherdermozilla-beta@b69b7de8a05a [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersroc
bugs844676
milestone23.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 844676 - Mark a video as still loading if we haven't yet created the ImageContainer, probably because the dedicated GPU isn't available yet. r=roc
layout/base/nsLayoutUtils.cpp
--- a/layout/base/nsLayoutUtils.cpp
+++ b/layout/base/nsLayoutUtils.cpp
@@ -4699,18 +4699,20 @@ nsLayoutUtils::SurfaceFromElement(HTMLVi
   }
 
   // If it doesn't have a principal, just bail
   nsCOMPtr<nsIPrincipal> principal = aElement->GetCurrentPrincipal();
   if (!principal)
     return result;
 
   ImageContainer *container = aElement->GetImageContainer();
-  if (!container)
+  if (!container) {
+    result.mIsStillLoading = true;
     return result;
+  }
 
   gfxIntSize size;
   nsRefPtr<gfxASurface> surf = container->GetCurrentAsSurface(&size);
   if (!surf)
     return result;
 
   if (wantImageSurface && surf->GetType() != gfxASurface::SurfaceTypeImage) {
     nsRefPtr<gfxImageSurface> imgSurf =