WebKit Bugzilla
Attachment 371476 Details for
Bug 198561
: REGRESSION(r243094): [GTK][WPE] Stale content after restoring the web view session
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
wk2-stale-session.diff (text/plain), 2.52 KB, created by
Carlos Garcia Campos
on 2019-06-05 23:05:38 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Carlos Garcia Campos
Created:
2019-06-05 23:05:38 PDT
Size:
2.52 KB
patch
obsolete
>diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index d54692625f4..c273e27be64 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,21 @@ >+2019-06-05 Carlos Garcia Campos <cgarcia@igalia.com> >+ >+ REGRESSION(r243094): [GTK][WPE] Stale content after restoring the web view session >+ https://bugs.webkit.org/show_bug.cgi?id=198561 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ This is another regression of delaying the web process launch until the first load. If the session is restored >+ before anything has been loaded, which is the normal way, the RestoreSession message is just ignored and the >+ state is sent to the WebPage on creation via creation parameters. The WebPage considers that restoring a session >+ from creation parameters only happens when re-launching a process after a crash or in case of process swap. In >+ those cases, the history item is not marked as restored from session. We need to ensure the session is restored >+ in the web process from the IPC message handler, by launching the initial process before the session is >+ restored. >+ >+ * UIProcess/WebPageProxy.cpp: >+ (WebKit::WebPageProxy::restoreFromSessionState): >+ > 2019-06-05 Michael Catanzaro <mcatanzaro@igalia.com> > > REGRESSION(r245796): [WPE][GTK] Web process crash on startup >diff --git a/Source/WebKit/UIProcess/WebPageProxy.cpp b/Source/WebKit/UIProcess/WebPageProxy.cpp >index b6c05f14acc..9937bc45e4b 100644 >--- a/Source/WebKit/UIProcess/WebPageProxy.cpp >+++ b/Source/WebKit/UIProcess/WebPageProxy.cpp >@@ -3083,6 +3083,13 @@ RefPtr<API::Navigation> WebPageProxy::restoreFromSessionState(SessionState sessi > bool hasBackForwardList = !!sessionState.backForwardListState.currentIndex; > > if (hasBackForwardList) { >+ // If there isn't a running process yet the RestoreSession message below is just ignored, and >+ // session is restored when the web process is created via creation parameters which is not >+ // considered an API request. So, we launch the initial process here before restoring the >+ // session to ensure the session is restored in the web process via RestoreSession IPC message >+ // which is considered an API request. See https://bugs.webkit.org/show_bug.cgi?id=198561. >+ launchInitialProcessIfNecessary(); >+ > m_backForwardList->restoreFromState(WTFMove(sessionState.backForwardListState)); > process().send(Messages::WebPage::RestoreSession(m_backForwardList->itemStates()), m_pageID); >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
cdumez
:
review+
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 198561
:
371389
| 371476