Commit 4918db06 authored by Olli Pettay's avatar Olli Pettay
Browse files

Bug 1803152, destroy nsFrameLoader asynchronously when destroyed from...

Bug 1803152, destroy nsFrameLoader asynchronously when destroyed from SessionHistoryEntry's/SHEntrySharedParentState's destructor. r=nika, a=RyanVM
parent b12c9b2b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -73,7 +73,7 @@ SHEntrySharedParentState::~SHEntrySharedParentState() {
  RefPtr<nsFrameLoader> loader = mFrameLoader;
  SetFrameLoader(nullptr);
  if (loader) {
    loader->Destroy();
    loader->AsyncDestroy();
  }

  sIdToSharedState->Remove(mId);
+5 −0
Original line number Diff line number Diff line
@@ -214,6 +214,11 @@ class nsFrameLoader final : public nsStubMutationObserver,
  void ActivateFrameEvent(const nsAString& aType, bool aCapture,
                          mozilla::ErrorResult& aRv);

  void AsyncDestroy() {
    mNeedsAsyncDestroy = true;
    Destroy();
  }

  void RequestUpdatePosition(mozilla::ErrorResult& aRv);

  already_AddRefed<Promise> RequestTabStateFlush(mozilla::ErrorResult& aRv);