On Sat, 5 Feb 2022 14:57:50 GMT, Kevin Rushforth <k...@openjdk.org> wrote:
>> modules/javafx.web/src/main/native/Source/WebCore/page/DOMWindow.cpp line >> 857: >> >>> 855: return m_localStorage.get(); >>> 856: } >>> 857: >> >> This will change the behavior for the case where page is null or where the >> page is valid, but not closing. I think you should partially revert this >> part of the fix, restoring it as follows: >> >> >> if (m_localStorage) >> return m_localStorage.get(); > > I still think you need to restore this block, but without the check for > `isClosing`. Kindly look code 👍 ExceptionOr<Storage*> DOMWindow::localStorage() { if (!isCurrentlyDisplayedInFrame()) return nullptr; RefPtr document = this->document(); if (!document) return nullptr; if (!document->securityOrigin().canAccessLocalStorage(nullptr)) return Exception { SecurityError }; // FIXME: We should consider supporting access/modification to local storage // after calling window.close(). See <https://bugs.webkit.org/show_bug.cgi?id=135330>. if (m_localStorage) return m_localStorage.get(); auto* page = document->page(); if (!page) return nullptr; // Check if localstorage setting is disabled, then return nullptr if (!page->settings().localStorageEnabled()) return nullptr; auto storageArea = page->storageNamespaceProvider().localStorageArea(*document); m_localStorage = Storage::create(*this, WTFMove(storageArea)); return m_localStorage.get(); } is it now ok? ------------- PR: https://git.openjdk.java.net/jfx/pull/703