|
31 | 31 | #include "CommonVM.h" |
32 | 32 | #include "ContainerNodeInlines.h" |
33 | 33 | #include "ContentSecurityPolicy.h" |
34 | | -#include "DocumentEventLoop.h" |
35 | 34 | #include "DocumentLoader.h" |
36 | 35 | #include "DocumentPage.h" |
37 | 36 | #include "DocumentSecurityOrigin.h" |
38 | 37 | #include "DocumentView.h" |
39 | 38 | #include "ElementInlines.h" |
40 | 39 | #include "Event.h" |
41 | 40 | #include "EventHandler.h" |
42 | | -#include "EventLoop.h" |
43 | 41 | #include "EventNames.h" |
44 | 42 | #include "FrameDestructionObserverInlines.h" |
45 | 43 | #include "FrameLoader.h" |
46 | 44 | #include "FrameTree.h" |
47 | | -#include "GCReachableRef.h" |
48 | 45 | #include "HTMLImageLoader.h" |
49 | 46 | #include "HTMLNames.h" |
50 | 47 | #include "HitTestResult.h" |
@@ -463,13 +460,13 @@ bool HTMLPlugInElement::requestObject(const String& relativeURL, const String& m |
463 | 460 | if (ScriptDisallowedScope::InMainThread::isScriptAllowed()) |
464 | 461 | return document->frame()->loader().subframeLoader().requestObject(*this, relativeURL, getNameAttribute(), mimeType, paramNames, paramValues); |
465 | 462 |
|
466 | | - protect(document->eventLoop())->queueTask(TaskSource::Networking, [this, protectedThis = Ref { *this }, relativeURL, nameAttribute = getNameAttribute(), mimeType, paramNames, paramValues, document]() mutable { |
467 | | - if (!this->isConnected() || &this->document() != document.ptr()) |
| 463 | + queueTaskKeepingNodeAlive(*this, TaskSource::Networking, [relativeURL, nameAttribute = getNameAttribute(), mimeType, paramNames, paramValues, document](auto& element) mutable { |
| 464 | + if (!element.isConnected() || &element.document() != document.ptr()) |
468 | 465 | return; |
469 | | - RefPtr frame = this->document().frame(); |
| 466 | + RefPtr frame = element.document().frame(); |
470 | 467 | if (!frame) |
471 | 468 | return; |
472 | | - frame->loader().subframeLoader().requestObject(*this, relativeURL, nameAttribute, mimeType, paramNames, paramValues); |
| 469 | + frame->loader().subframeLoader().requestObject(element, relativeURL, nameAttribute, mimeType, paramNames, paramValues); |
473 | 470 | }); |
474 | 471 | return true; |
475 | 472 | } |
@@ -514,8 +511,8 @@ void HTMLPlugInElement::scheduleUpdateForAfterStyleResolution() |
514 | 511 |
|
515 | 512 | m_hasUpdateScheduledForAfterStyleResolution = true; |
516 | 513 |
|
517 | | - protect(document->eventLoop())->queueTask(TaskSource::DOMManipulation, [element = GCReachableRef { *this }] { |
518 | | - element->updateAfterStyleResolution(); |
| 514 | + queueTaskKeepingNodeAlive(*this, TaskSource::DOMManipulation, [](auto& element) { |
| 515 | + element.updateAfterStyleResolution(); |
519 | 516 | }); |
520 | 517 | } |
521 | 518 |
|
|
0 commit comments