tor-browser

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

commit e3cddd698ceb0077468214c7dded8b2b5e793b1f
parent b49ccb7e945ca5e2f55971438fa8d309ae68bdb3
Author: Cosmin Sabou <csabou@mozilla.com>
Date:   Sat, 18 Oct 2025 00:37:23 +0300

Revert "Bug 1994022 - Use Span for ExternalTextureSourceHost::CreateFromBufferDesc. r=webgpu-reviewers,jimb" for causing mda failures on test_standalone.

This reverts commit 109489f1e1fb65693a6899ad555064649725f241.

Diffstat:
Mdom/webgpu/ExternalTexture.cpp | 24+++++++++++-------------
Mdom/webgpu/ExternalTexture.h | 2+-
2 files changed, 12 insertions(+), 14 deletions(-)

diff --git a/dom/webgpu/ExternalTexture.cpp b/dom/webgpu/ExternalTexture.cpp @@ -433,7 +433,7 @@ ExternalTextureSourceHost::ExternalTextureSourceHost( ipc::Shmem& bufferShmem = bufferDesc.data().get_Shmem(); auto source = CreateFromBufferDesc(aParent, aDeviceId, aQueueId, aDesc, - bufferDesc.desc(), bufferShmem.Range<uint8_t>()); + bufferDesc.desc(), bufferShmem.get<uint8_t>()); aParent->DeallocShmem(bufferShmem); return source; } break; @@ -468,10 +468,9 @@ ExternalTextureSourceHost::ExternalTextureSourceHost( "Unexpected TextureHost type"_ns); return CreateError(); } - return CreateFromBufferDesc( - aParent, aDeviceId, aQueueId, aDesc, - bufferHost->GetBufferDescriptor(), - Span(bufferHost->GetBuffer(), bufferHost->GetBufferSize())); + return CreateFromBufferDesc(aParent, aDeviceId, aQueueId, aDesc, + bufferHost->GetBufferDescriptor(), + bufferHost->GetBuffer()); } break; case layers::RemoteDecoderVideoSubDescriptor::TSurfaceDescriptorD3D10: { @@ -527,7 +526,7 @@ ExternalTextureSourceHost::ExternalTextureSourceHost( ExternalTextureSourceHost::CreateFromBufferDesc( WebGPUParent* aParent, RawId aDeviceId, RawId aQueueId, const ExternalTextureSourceDescriptor& aDesc, - const layers::BufferDescriptor& aSd, Span<uint8_t> aBuffer) { + const layers::BufferDescriptor& aSd, uint8_t* aBuffer) { const gfx::SurfaceFormat format = layers::ImageDataSerializer::FormatFromBufferDescriptor(aSd); // Creates a texture and view for a single plane, and writes the provided data @@ -535,7 +534,7 @@ ExternalTextureSourceHost::CreateFromBufferDesc( auto createPlane = [aParent, aDeviceId, aQueueId]( RawId texId, RawId viewId, ffi::WGPUTextureFormat format, gfx::IntSize size, - Span<uint8_t> buffer, uint32_t stride) { + uint8_t* buffer, uint32_t stride) { const ffi::WGPUTextureDescriptor textureDesc{ .size = ffi::WGPUExtent3d{ @@ -573,10 +572,9 @@ ExternalTextureSourceHost::CreateFromBufferDesc( .bytes_per_row = &stride, .rows_per_image = nullptr, }; - const Span<uint8_t> slice = buffer.to(size.height * stride); const ffi::WGPUFfiSlice_u8 data{ - .data = slice.data(), - .length = slice.size(), + .data = buffer, + .length = size.height * stride, }; { ErrorBuffer error; @@ -656,12 +654,12 @@ ExternalTextureSourceHost::CreateFromBufferDesc( } createPlane(aDesc.mTextureIds[0], aDesc.mViewIds[0], planeFormat, ySize, - aBuffer.from(yCbCrDesc.yOffset()), yCbCrDesc.yStride()); + aBuffer + yCbCrDesc.yOffset(), yCbCrDesc.yStride()); createPlane(aDesc.mTextureIds[1], aDesc.mViewIds[1], planeFormat, - cbCrSize, aBuffer.from(yCbCrDesc.cbOffset()), + cbCrSize, aBuffer + yCbCrDesc.cbOffset(), yCbCrDesc.cbCrStride()); createPlane(aDesc.mTextureIds[2], aDesc.mViewIds[2], planeFormat, - cbCrSize, aBuffer.from(yCbCrDesc.crOffset()), + cbCrSize, aBuffer + yCbCrDesc.crOffset(), yCbCrDesc.cbCrStride()); usedTextureIds.AppendElements(aDesc.mTextureIds.data(), aDesc.mTextureIds.size()); diff --git a/dom/webgpu/ExternalTexture.h b/dom/webgpu/ExternalTexture.h @@ -245,7 +245,7 @@ class ExternalTextureSourceHost { static ExternalTextureSourceHost CreateFromBufferDesc( WebGPUParent* aParent, RawId aDeviceId, RawId aQueueId, const ExternalTextureSourceDescriptor& aDesc, - const layers::BufferDescriptor& aSd, Span<uint8_t> aBuffer); + const layers::BufferDescriptor& aSd, uint8_t* aBuffer); static ExternalTextureSourceHost CreateFromD3D10Desc( WebGPUParent* aParent, RawId aDeviceId, RawId aQueueId, const ExternalTextureSourceDescriptor& aDesc,