commit | b0dd53cc7fb0ff6f3390747daf125b269a3cd0b5 | [log] [tgz] |
---|---|---|
author | Arthur Sonzogni <arthursonzogni@chromium.org> | Wed Sep 11 18:08:31 2024 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed Sep 11 18:08:31 2024 +0000 |
tree | 366ccbafc93bab5bbb05063acfd8797647007b95 | |
parent | b26fd0e4802008b5296d54cc0b0d14367109eff2 [diff] |
MiraclePtr: Avoid storing ExtractAsDangling() into a variable. ExtractAsDangling() converts the raw_ptr into a raw_ptr allowed to dangle. This is expected to be used immediately as a temporary object, and not stored as a naked pointer. This relies on C++ calling destructor of temporaries at the end of the full expression. It means MiraclePtr will continue to consider the object "referenced" during the expression and continue to protect against UAF during the callback call. Bug: None Change-Id: If9436fb9626253b24c51d2c1db1701d22513fcd3 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/206274 Auto-Submit: Arthur Sonzogni <arthursonzogni@chromium.org> Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Dawn is an open-source and cross-platform implementation of the WebGPU standard. More precisely it implements webgpu.h
that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h
version that Dawn implements.webgpu.h
.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.