aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/webxr
diff options
context:
space:
mode:
authorYerkebulan Tulibergenov <yerkebulan@gmail.com>2025-02-25 02:12:58 -0800
committerGitHub <noreply@github.com>2025-02-25 10:12:58 +0000
commit38b71087bd710dd0a96140affbb5bb38c23d8689 (patch)
tree62f64087a4ef2e508b8ce0679391799ac91a34d1 /components/script/dom/webxr
parentc844ed232a86fef873dc661de60e282fdb86c0d3 (diff)
downloadservo-38b71087bd710dd0a96140affbb5bb38c23d8689.tar.gz
servo-38b71087bd710dd0a96140affbb5bb38c23d8689.zip
refactor: add CanGc as argument to Promise::reject_error (#35646)
Signed-off-by: Yerkebulan Tulibergenov <yerkebulan@gmail.com>
Diffstat (limited to 'components/script/dom/webxr')
-rw-r--r--components/script/dom/webxr/xrsession.rs15
-rw-r--r--components/script/dom/webxr/xrsystem.rs8
-rw-r--r--components/script/dom/webxr/xrtest.rs8
3 files changed, 17 insertions, 14 deletions
diff --git a/components/script/dom/webxr/xrsession.rs b/components/script/dom/webxr/xrsession.rs
index 07a96798c29..8205bc63798 100644
--- a/components/script/dom/webxr/xrsession.rs
+++ b/components/script/dom/webxr/xrsession.rs
@@ -836,14 +836,14 @@ impl XRSessionMethods<crate::DomTypeHolder> for XRSession {
if !self.is_immersive() &&
(ty == XRReferenceSpaceType::Bounded_floor || ty == XRReferenceSpaceType::Unbounded)
{
- p.reject_error(Error::NotSupported);
+ p.reject_error(Error::NotSupported, can_gc);
return p;
}
match ty {
XRReferenceSpaceType::Unbounded => {
// XXXmsub2 figure out how to support this
- p.reject_error(Error::NotSupported)
+ p.reject_error(Error::NotSupported, can_gc)
},
ty => {
if ty != XRReferenceSpaceType::Viewer &&
@@ -857,7 +857,7 @@ impl XRSessionMethods<crate::DomTypeHolder> for XRSession {
.iter()
.any(|f| *f == s)
{
- p.reject_error(Error::NotSupported);
+ p.reject_error(Error::NotSupported, can_gc);
return p;
}
}
@@ -927,7 +927,7 @@ impl XRSessionMethods<crate::DomTypeHolder> for XRSession {
.iter()
.any(|f| f == "hit-test")
{
- p.reject_error(Error::NotSupported);
+ p.reject_error(Error::NotSupported, can_gc);
return p;
}
@@ -1035,12 +1035,15 @@ impl XRSessionMethods<crate::DomTypeHolder> for XRSession {
supported_frame_rates.is_empty() ||
self.ended.get()
{
- promise.reject_error(Error::InvalidState);
+ promise.reject_error(Error::InvalidState, can_gc);
return promise;
}
if !supported_frame_rates.contains(&*rate) {
- promise.reject_error(Error::Type("Provided framerate not supported".into()));
+ promise.reject_error(
+ Error::Type("Provided framerate not supported".into()),
+ can_gc,
+ );
return promise;
}
}
diff --git a/components/script/dom/webxr/xrsystem.rs b/components/script/dom/webxr/xrsystem.rs
index cda1315e528..288a81e0649 100644
--- a/components/script/dom/webxr/xrsystem.rs
+++ b/components/script/dom/webxr/xrsystem.rs
@@ -171,13 +171,13 @@ impl XRSystemMethods<crate::DomTypeHolder> for XRSystem {
if pref!(dom_webxr_unsafe_assume_user_intent) {
warn!("The dom.webxr.unsafe-assume-user-intent preference assumes user intent to enter WebXR.");
} else {
- promise.reject_error(Error::Security);
+ promise.reject_error(Error::Security, can_gc);
return promise;
}
}
if self.pending_or_active_session() {
- promise.reject_error(Error::InvalidState);
+ promise.reject_error(Error::InvalidState, can_gc);
return promise;
}
@@ -200,7 +200,7 @@ impl XRSystemMethods<crate::DomTypeHolder> for XRSystem {
if mode != XRSessionMode::Inline {
self.pending_immersive_session.set(false);
}
- promise.reject_error(Error::NotSupported);
+ promise.reject_error(Error::NotSupported, can_gc);
return promise;
}
}
@@ -291,7 +291,7 @@ impl XRSystem {
if mode != XRSessionMode::Inline {
self.pending_immersive_session.set(false);
}
- promise.reject_error(Error::NotSupported);
+ promise.reject_error(Error::NotSupported, can_gc);
return;
},
};
diff --git a/components/script/dom/webxr/xrtest.rs b/components/script/dom/webxr/xrtest.rs
index 415c382624a..1cd29b027e7 100644
--- a/components/script/dom/webxr/xrtest.rs
+++ b/components/script/dom/webxr/xrtest.rs
@@ -77,7 +77,7 @@ impl XRTestMethods<crate::DomTypeHolder> for XRTest {
match get_origin(o) {
Ok(origin) => Some(origin),
Err(e) => {
- p.reject_error(e);
+ p.reject_error(e, can_gc);
return p;
},
}
@@ -89,7 +89,7 @@ impl XRTestMethods<crate::DomTypeHolder> for XRTest {
match get_origin(o) {
Ok(origin) => Some(origin),
Err(e) => {
- p.reject_error(e);
+ p.reject_error(e, can_gc);
return p;
},
}
@@ -100,7 +100,7 @@ impl XRTestMethods<crate::DomTypeHolder> for XRTest {
let views = match get_views(&init.views) {
Ok(views) => views,
Err(e) => {
- p.reject_error(e);
+ p.reject_error(e, can_gc);
return p;
},
};
@@ -115,7 +115,7 @@ impl XRTestMethods<crate::DomTypeHolder> for XRTest {
let w = match get_world(w) {
Ok(w) => w,
Err(e) => {
- p.reject_error(e);
+ p.reject_error(e, can_gc);
return p;
},
};