<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>225970</bug_id>
          
          <creation_ts>2021-05-19 09:17:40 -0700</creation_ts>
          <short_desc>[GTK] REGRESSION(r277425) Oops on navigation after back</short_desc>
          <delta_ts>2021-05-25 06:39:13 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>History</component>
          <version>WebKit Local Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jim Mason">jmason</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>fred.wang</cc>
    
    <cc>mcatanzaro</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1761548</commentid>
    <comment_count>0</comment_count>
    <who name="Jim Mason">jmason</who>
    <bug_when>2021-05-19 09:17:40 -0700</bug_when>
    <thetext>***NOTE:  Checking the ChangeLog just now, I see this is apparently a dup of 225795, which I am not authorized to access.

Due to the fact I cannot view 225795, search does not find it, so I want to enter a **publicly visible** bug to document it for anyone else who experiences this issue.

It is not at all clear to me why a regression would be marked restricted access in the bug database.  I spent a couple days tracking this down; hiding bugs like this is not helpful.

Based on the ChangeLog, I surmise the issue has been resolved, but due to lack of access to 225795, I don&apos;t know for sure.  I&apos;m building now to find out.

Here are my findings:

Since r277425, when I click on a link in a page after browser back, I get an Oops in epiphany.

Steps to reproduce:
    1) open https://zookeeper.stanford.edu/
    2) click on any link in the page
    3) back
    4) click on another link in page.  Oops.

WebKitWebProcess segfaults with this backtrace:

Thread 17 received signal SIGSEGV, Segmentation fault.
0x00007fff4a7a3710 in WebCore::FrameTree::parent() const ()
   from /usr/lib/64/libwebkit2gtk-4.0.so.37
(gdb) bt
#0  0x00007fff4a7a3710 in WebCore::FrameTree::parent() const ()
    at /usr/lib/64/libwebkit2gtk-4.0.so.37
#1  0x00007fff4a24d939 in WebCore::FrameSelection::selectFrameElementInParentIfFullySelected() () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#2  0x00007fff4a24e305 in WebCore::FrameSelection::setSelectionWithoutUpdatingAppearance(WebCore::VisibleSelection const&amp;, WTF::OptionSet&lt;WebCore::FrameSelection::SetSelectionOption&gt;, WebCore::FrameSelection::CursorAlignOnScroll, WebCore::TextGranularity) () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#3  0x00007fff4a24e6e8 in WebCore::FrameSelection::willBeRemovedFromFrame() ()
    at /usr/lib/64/libwebkit2gtk-4.0.so.37
#4  0x00007fff4a11729d in WebCore::Document::willBeRemovedFromFrame() ()
    at /usr/lib/64/libwebkit2gtk-4.0.so.37
#5  0x00007fff4a2f3c5c in WebCore::CachedFrame::destroy() ()
    at /usr/lib/64/libwebkit2gtk-4.0.so.37
#6  0x00007fff4a2f3d1e in WebCore::CachedPage::~CachedPage() ()
    at /usr/lib/64/libwebkit2gtk-4.0.so.37
#7  0x00007fff4a2f516f in WebCore::BackForwardCache::prune(WebCore::PruningReason) () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#8  0x00007fff4a2f5adb in WebCore::BackForwardCache::addIfCacheable(WebCore::HistoryItem&amp;, WebCore::Page*) () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#9  0x00007fff4a68c0a1 in WebCore::FrameLoader::commitProvisionalLoad() ()
    at /usr/lib/64/libwebkit2gtk-4.0.so.37
#10 0x00007fff4a657ea0 in WebCore::DocumentLoader::commitLoad(char const*, int)
--Type &lt;RET&gt; for more, q to quit, c to continue without paging--c
    () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#11 0x00007fff4a714fe1 in WebCore::CachedRawResource::notifyClientsDataWasReceived(char const*, unsigned int) [clone .part.0] () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#12 0x00007fff4a715424 in WebCore::CachedRawResource::updateBuffer(WebCore::SharedBuffer&amp;) [clone .part.0] () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#13 0x00007fff4a6cf857 in WebCore::SubresourceLoader::didReceiveDataOrBuffer(char const*, int, WTF::RefPtr&lt;WebCore::SharedBuffer, WTF::RawPtrTraits&lt;WebCore::SharedBuffer&gt;, WTF::DefaultRefDerefTraits&lt;WebCore::SharedBuffer&gt; &gt;&amp;&amp;, long long, WebCore::DataPayloadType) () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#14 0x00007fff4a6cf9bb in WebCore::SubresourceLoader::didReceiveData(char const*, unsigned int, long long, WebCore::DataPayloadType) () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#15 0x00007fff48d6928d in void IPC::handleMessage&lt;Messages::WebResourceLoader::DidReceiveData, WebKit::WebResourceLoader, void (WebKit::WebResourceLoader::*)(IPC::ArrayReference&lt;unsigned char, 18446744073709551615ul&gt; const&amp;, long)&gt;(IPC::Decoder&amp;, WebKit::WebResourceLoader*, void (WebKit::WebResourceLoader::*)(IPC::ArrayReference&lt;unsigned char, 18446744073709551615ul&gt; const&amp;, long)) () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#16 0x00007fff48d68fd4 in WebKit::WebResourceLoader::didReceiveWebResourceLoaderMessage(IPC::Connection&amp;, IPC::Decoder&amp;) () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#17 0x00007fff48f08275 in IPC::Connection::dispatchMessage(std::unique_ptr&lt;IPC::Decoder, std::default_delete&lt;IPC::Decoder&gt; &gt;) () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#18 0x00007fff48f0996d in IPC::Connection::dispatchOneIncomingMessage() () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#19 0x00007fff460c1ab4 in WTF::RunLoop::performWork() () at /usr/lib/64/libjavascriptcoregtk-4.0.so.18
#20 0x00007fff4612f8f9 in WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) () at /usr/lib/64/libjavascriptcoregtk-4.0.so.18
#21 0x00007fff46130469 in WTF::RunLoop::{lambda(_GSource*, int (*)(void*), void*)#1}::_FUN(_GSource*, int (*)(void*), void*) () at /usr/lib/64/libjavascriptcoregtk-4.0.so.18
#22 0x00007fff4637e2b0 in g_main_context_dispatch () at /usr/lib/64/libglib-2.0.so.0
#23 0x00007fff4637e638 in g_main_context_iterate.constprop () at /usr/lib/64/libglib-2.0.so.0
#24 0x00007fff4637e923 in g_main_loop_run () at /usr/lib/64/libglib-2.0.so.0
#25 0x00007fff461305a0 in WTF::RunLoop::run() () at /usr/lib/64/libjavascriptcoregtk-4.0.so.18
#26 0x00007fff49340622 in WebKit::WebProcessMain(int, char**) () at /usr/lib/64/libwebkit2gtk-4.0.so.37
#27 0x0000000000400d9c in _start ()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761685</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-05-19 13:53:36 -0700</bug_when>
    <thetext>(If it&apos;s just a null pointer dereference, it&apos;s safe for it to be public. Bugs with dangling pointers should be private.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761805</commentid>
    <comment_count>2</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-05-19 18:14:20 -0700</bug_when>
    <thetext>This should be fixed by r277600 I guess?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1763496</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-05-25 06:39:13 -0700</bug_when>
    <thetext>(In reply to Frédéric Wang (:fredw) from comment #2)
&gt; This should be fixed by r277600 I guess?

I was seeing this crash very frequently prior to r277600, but I don&apos;t see it anymore. It&apos;s probably fixed.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>