aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/gpuoutofmemoryerror.rs
diff options
context:
space:
mode:
authorSamson <16504129+sagudev@users.noreply.github.com>2024-05-22 18:47:35 +0200
committerGitHub <noreply@github.com>2024-05-22 16:47:35 +0000
commit794110ebe58ad72d809291e9feb3f2cc92819941 (patch)
tree9c01451fa022f433fa8a305d58c2a79da747e838 /components/script/dom/gpuoutofmemoryerror.rs
parent9f32809671c8c8e79d59c95194dcc466452299fc (diff)
downloadservo-794110ebe58ad72d809291e9feb3f2cc92819941.tar.gz
servo-794110ebe58ad72d809291e9feb3f2cc92819941.zip
webgpu: Move errorscopes to WGPU thread (#32304)
* Prepare errorscopes logic in wgpu_thread * remove scope_id from ipc * new GPUErrors per spec * remove cotent timeline error_scope * fixup poperrorscope types * device_scope -> gpu_error and nice errors * Handle errors detection more elegantly * good expectations * new expectations * Make error_scope.errors Vec as per spec
Diffstat (limited to 'components/script/dom/gpuoutofmemoryerror.rs')
-rw-r--r--components/script/dom/gpuoutofmemoryerror.rs36
1 files changed, 19 insertions, 17 deletions
diff --git a/components/script/dom/gpuoutofmemoryerror.rs b/components/script/dom/gpuoutofmemoryerror.rs
index 65252a28530..c3278473970 100644
--- a/components/script/dom/gpuoutofmemoryerror.rs
+++ b/components/script/dom/gpuoutofmemoryerror.rs
@@ -5,37 +5,39 @@
use dom_struct::dom_struct;
use js::rust::HandleObject;
-use crate::dom::bindings::reflector::{reflect_dom_object_with_proto, Reflector};
+use super::types::GPUError;
+use crate::dom::bindings::reflector::reflect_dom_object_with_proto;
use crate::dom::bindings::root::DomRoot;
+use crate::dom::bindings::str::DOMString;
use crate::dom::globalscope::GlobalScope;
#[dom_struct]
pub struct GPUOutOfMemoryError {
- reflector_: Reflector,
+ gpu_error: GPUError,
}
impl GPUOutOfMemoryError {
- fn new_inherited() -> Self {
+ fn new_inherited(message: DOMString) -> Self {
Self {
- reflector_: Reflector::new(),
+ gpu_error: GPUError::new_inherited(message),
}
}
- pub fn new(global: &GlobalScope) -> DomRoot<Self> {
- Self::new_with_proto(global, None)
+ pub fn new_with_proto(
+ global: &GlobalScope,
+ proto: Option<HandleObject>,
+ message: DOMString,
+ ) -> DomRoot<Self> {
+ reflect_dom_object_with_proto(Box::new(Self::new_inherited(message)), global, proto)
}
- fn new_with_proto(global: &GlobalScope, proto: Option<HandleObject>) -> DomRoot<Self> {
- reflect_dom_object_with_proto(
- Box::new(GPUOutOfMemoryError::new_inherited()),
- global,
- proto,
- )
- }
-
- /// <https://gpuweb.github.io/gpuweb/#dom-gpuoutofmemoryerror-gpuoutofmemoryerror>
+ /// <https://gpuweb.github.io/gpuweb/#dom-GPUOutOfMemoryError-GPUOutOfMemoryError>
#[allow(non_snake_case)]
- pub fn Constructor(global: &GlobalScope, proto: Option<HandleObject>) -> DomRoot<Self> {
- GPUOutOfMemoryError::new_with_proto(global, proto)
+ pub fn Constructor(
+ global: &GlobalScope,
+ proto: Option<HandleObject>,
+ message: DOMString,
+ ) -> DomRoot<Self> {
+ Self::new_with_proto(global, proto, message)
}
}