servo/components/script
bors-servo 0884884796
Auto merge of #25345 - jdm:drop-cleanup, r=asajeffrey
Avoid accessing global objects from DOM destructors

This removes all instances that I could find of DOM objects accessing `self.global()` in code that runs as part of a Drop method. This is unsafe because the GC could destroy objects in any order when doing a big sweep. Instead, these types should store the data they need as members so they can run in isolation without accessing the rest of the GC graph as part of their destructors.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #25258 and fix #23986
- [x] There are tests for these changes
2020-02-24 17:25:02 -05:00
..
docs
dom Auto merge of #25345 - jdm:drop-cleanup, r=asajeffrey 2020-02-24 17:25:02 -05:00
task_source remove unnecessary thread in filereader, add stream TODO 2019-12-10 14:55:22 +08:00
body.rs Implement Blob methods (text/arraybuffer) and async file read method 2020-01-28 14:38:32 +05:30
build.rs
canvas_state.rs Implement CanvasRenderingContext2D.getTransform() 2020-02-12 08:49:18 +01:00
Cargo.toml Add profiling for WebXR 2020-02-22 22:00:05 -08:00
clipboard_provider.rs
devtools.rs rename compartment to realm 2020-01-24 20:52:36 +05:30
document_loader.rs Use #![register_tool] instead of #![register_attr] 2019-11-15 17:24:42 +01:00
euclidext.rs Addresses issues raised in #24465; removes redundancy in set_bitmap_dimensions 2019-11-10 18:37:14 -05:00
fetch.rs let integrity_metadata survive IPC sending 2020-01-30 10:34:29 -05:00
image_listener.rs
init.rs script: Ensure JS engine is initialized and deinitialized on the same thread. 2019-11-26 21:54:33 -05:00
layout_image.rs
lib.rs rename compartment to realm 2020-01-24 20:52:36 +05:30
mem.rs
microtask.rs Add microtask checkpoints on </script> and CE construct 2020-01-15 11:49:52 -05:00
network_listener.rs #24468 Performance::queue_entries return the index of the added performance entry 2019-12-13 13:41:47 -05:00
realms.rs rename compartment to realm 2020-01-24 20:52:36 +05:30
script_module.rs Always pass InRealm to GlobalScope::from_context to avoid getting null global 2020-02-16 09:55:10 +09:00
script_runtime.rs Always pass InRealm to GlobalScope::from_context to avoid getting null global 2020-02-16 09:55:10 +09:00
script_thread.rs Avoid accessing node global during Node's destructor. 2020-02-24 16:27:40 -05:00
serviceworker_manager.rs Undo changes done to change worker_id type to string 2019-12-10 13:12:54 +05:30
serviceworkerjob.rs Use #![register_tool] instead of #![register_attr] 2019-11-15 17:24:42 +01:00
stylesheet_loader.rs Modify script to prevent further violations of snake_case 2020-01-18 14:22:15 +05:30
stylesheet_set.rs
task.rs
task_manager.rs impl timer-task-source, dedicated time-out mechanism for service-worker 2019-11-19 14:32:21 +08:00
task_queue.rs
test.rs Modify script to prevent further violations of snake_case 2020-01-18 14:22:15 +05:30
textinput.rs Allow deletion from overflowed textinput 2020-01-10 19:02:41 +01:00
timers.rs impl timer-task-source, dedicated time-out mechanism for service-worker 2019-11-19 14:32:21 +08:00
unpremultiplytable.rs
webdriver_handlers.rs Modify script to prevent further violations of snake_case 2020-01-18 14:22:15 +05:30