commit | f20a53466bc2cd5c86f0f903a9eea322cadf8b77 | [log] [tgz] |
---|---|---|
author | Jiawei Shao <jiawei.shao@intel.com> | Mon Apr 15 03:03:52 2024 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon Apr 15 03:03:52 2024 +0000 |
tree | ca6df8ee03d349e0beace3dec50eee3bba4e04e5 | |
parent | e1d7581ee5e4a2a1de567bd97d85eed0c7270d92 [diff] |
Fix crash when exiting Dawn samples This patch fixes a crash (nullptr access) when closing the window of Dawn samples by manually destroying all WGPU objects in main() function. Without this step `wireHelper` (in SampleUtils.cpp) will always be destroyed before any WGPU objects in each sample file, so a nullptr access will occur when any WGPU object is destroyed as at that time `dawnProcSetProcs(nullptr)` has already been called in `~WireHelper()`. Bug: None Change-Id: If531b76a31352e315b39963265ebcf7c7b9b6064 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/183480 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Austin Eng <enga@chromium.org> Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
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.