mirror of
https://github.com/servo/servo.git
synced 2025-08-12 08:55:32 +01:00
script: Support creating a DOMStringList for any global. (#37567)
There were a lot of crashing IndexedDB tests caused by code in DOMStringList that required a Window object despite being exposed to non-Window globals. Testing: Lots of existing tests no longer crash. Fixes: part of #6963 Signed-off-by: Josh Matthews <josh@joshmatthews.net>
This commit is contained in:
parent
b331cb4603
commit
52dc1fa88d
81 changed files with 1324 additions and 313 deletions
|
@ -85,7 +85,7 @@ impl IDBDatabase {
|
|||
|
||||
pub fn object_stores(&self) -> DomRoot<DOMStringList> {
|
||||
DOMStringList::new(
|
||||
self.global().as_window(),
|
||||
&self.global(),
|
||||
self.object_store_names.borrow().clone(),
|
||||
CanGc::note(),
|
||||
)
|
||||
|
@ -161,7 +161,7 @@ impl IDBDatabaseMethods<crate::DomTypeHolder> for IDBDatabase {
|
|||
&self.global(),
|
||||
self,
|
||||
mode,
|
||||
&DOMStringList::new(self.global().as_window(), vec![name], CanGc::note()),
|
||||
&DOMStringList::new(&self.global(), vec![name], CanGc::note()),
|
||||
CanGc::note(),
|
||||
),
|
||||
StringOrStringSequence::StringSequence(sequence) => {
|
||||
|
@ -171,7 +171,7 @@ impl IDBDatabaseMethods<crate::DomTypeHolder> for IDBDatabase {
|
|||
&self.global(),
|
||||
self,
|
||||
mode,
|
||||
&DOMStringList::new(self.global().as_window(), sequence, CanGc::note()),
|
||||
&DOMStringList::new(&self.global(), sequence, CanGc::note()),
|
||||
CanGc::note(),
|
||||
)
|
||||
},
|
||||
|
@ -343,7 +343,7 @@ impl IDBDatabaseMethods<crate::DomTypeHolder> for IDBDatabase {
|
|||
fn ObjectStoreNames(&self) -> DomRoot<DOMStringList> {
|
||||
// FIXME: (arihant2math) Sort the list of names, as per spec
|
||||
DOMStringList::new(
|
||||
self.global().as_window(),
|
||||
&self.global(),
|
||||
self.object_store_names.borrow().clone(),
|
||||
CanGc::note(),
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue