From dbc18f6058d90f1842bc758bf992d9c382b42b96 Mon Sep 17 00:00:00 2001 From: Nicholas Cameron <ncameron@mozilla.com> Date: Thu, 26 Apr 2012 10:04:36 +1200 Subject: [PATCH] Bug 748116; Get windows taskbar tab previews working with Skia/Azure canvas; r=roc --- .../canvas/src/nsCanvasRenderingContext2DAzure.cpp | 14 ++++++++------ widget/windows/TaskbarPreview.cpp | 2 +- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/content/canvas/src/nsCanvasRenderingContext2DAzure.cpp b/content/canvas/src/nsCanvasRenderingContext2DAzure.cpp index 258a9fb12e82..0d9ee32b7798 100644 --- a/content/canvas/src/nsCanvasRenderingContext2DAzure.cpp +++ b/content/canvas/src/nsCanvasRenderingContext2DAzure.cpp @@ -3700,12 +3700,14 @@ nsCanvasRenderingContext2DAzure::DrawImage(const HTMLImageOrCanvasOrVideoElement // This might not be an Azure canvas! srcSurf = srcCanvas->GetSurfaceSnapshot(); - if (srcSurf && mCanvasElement) { - // Do security check here. - CanvasUtils::DoDrawImageSecurityCheck(mCanvasElement, - element->NodePrincipal(), - canvas->IsWriteOnly(), - false); + if (srcSurf) { + if (mCanvasElement) { + // Do security check here. + CanvasUtils::DoDrawImageSecurityCheck(mCanvasElement, + element->NodePrincipal(), + canvas->IsWriteOnly(), + false); + } imgSize = gfxIntSize(srcSurf->GetSize().width, srcSurf->GetSize().height); } } diff --git a/widget/windows/TaskbarPreview.cpp b/widget/windows/TaskbarPreview.cpp index 25d86746624a..2960068f72fd 100644 --- a/widget/windows/TaskbarPreview.cpp +++ b/widget/windows/TaskbarPreview.cpp @@ -61,7 +61,7 @@ GetRenderingContext(nsIDocShell *shell, gfxASurface *surface, if (!ctx) { // create the canvas rendering context - ctx = do_CreateInstance("@mozilla.org/content/2dthebes-canvas-rendering-context;1", &rv); + ctx = do_CreateInstance("@mozilla.org/content/canvas-rendering-context;1?id=2d", &rv); if (NS_FAILED(rv)) { NS_WARNING("Could not create nsICanvasRenderingContext2D for tab previews!"); return rv;