mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
script: Avoid double borrow crash in DataTransferItem
(#35699)
* avoid double borrow inside GetAsString Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com> * added crashtest Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com> --------- Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
This commit is contained in:
parent
8a3f62933b
commit
900655fbc7
3 changed files with 24 additions and 1 deletions
|
@ -123,7 +123,8 @@ impl DataTransferItemMethods<crate::DomTypeHolder> for DataTransferItem {
|
|||
.task_manager()
|
||||
.dom_manipulation_task_source()
|
||||
.queue(task!(invoke_callback: move || {
|
||||
if let Some(index) = this.root().pending_callbacks.borrow().iter().position(|val| val.id == id) {
|
||||
let maybe_index = this.root().pending_callbacks.borrow().iter().position(|val| val.id == id);
|
||||
if let Some(index) = maybe_index {
|
||||
let callback = this.root().pending_callbacks.borrow_mut().swap_remove(index).callback;
|
||||
let _ = callback.Call__(DOMString::from(string), ExceptionHandling::Report);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue