tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit a09cc08c820eaa310d0dd83d252d5dadb992a3a6
parent 5f98792acd9dcd4c90718fbae42bb3865435376c
Author: Jamie Nicol <jnicol@mozilla.com>
Date:   Mon,  8 Dec 2025 13:23:46 +0000

Bug 2004135 - Handle error case in CanvasToDataSourceSurface(). r=gfx-reviewers,nical

If SurfaceFromElement::GetSourceSurface() returns null, then return
null. This is correctly handled by the calling function
CompareCanvases.

Differential Revision: https://phabricator.services.mozilla.com/D275213

Diffstat:
Mdom/base/nsDOMWindowUtils.cpp | 8+++++---
1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/dom/base/nsDOMWindowUtils.cpp b/dom/base/nsDOMWindowUtils.cpp @@ -1583,9 +1583,11 @@ static already_AddRefed<DataSourceSurface> CanvasToDataSourceSurface( HTMLCanvasElement* aCanvas) { MOZ_ASSERT(aCanvas); SurfaceFromElementResult result = nsLayoutUtils::SurfaceFromElement(aCanvas); - - MOZ_ASSERT(result.GetSourceSurface()); - return result.GetSourceSurface()->GetDataSurface(); + const RefPtr<SourceSurface> surf = result.GetSourceSurface(); + if (!surf) { + return nullptr; + } + return surf->GetDataSurface(); } NS_IMETHODIMP