Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-78490

WebEngineView crashes in content::FrameTreeNode::IsMainFrame

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P1: Critical
    • Resolution: Fixed
    • Affects Version/s: 5.12.5
    • Fix Version/s: 5.12.8, 5.14.2
    • Component/s: WebEngine, WebView
    • Labels:
      None
    • Environment:
      Windows 10, Qt 5.12.1 / Qt 5.12.4 / Qt 5.12.5
    • Platform/s:
      Windows
    • Commits:
      I849a609f5524d715769079f6c5cabf8db6b45944

      Description

      I am getting a crash in

       

      1 content::FrameTreeNode::IsMainFrame frame_tree_node.cc 183 0x7ffd02c3db4e 
      2 content::NavigationRequest::OnRequestFailedInternal navigation_request.cc 1143 0x7ffd02c7a58b 
      3 content::NavigationRequest::OnRequestFailed navigation_request.cc 1098 0x7ffd02c7a09e 
      4 content::NavigationURLLoaderImpl::OnComplete navigation_url_loader_impl.cc 1488 0x7ffd02e50a63 
      5 base::internal::FunctorTraits<void (__cdecl media::DXVAVideoDecodeAccelerator:: *)(std::list<Microsoft::WRL::ComPtr<IMFSample>> const & __ptr64) __ptr64,void>::Invoke<void (__cdecl media::DX bind_internal.h 508 0x7ffd06e48f6b 
      6 base::internal::InvokeHelper<1,void>::MakeItSo<void (__cdecl media::DXVAVideoDecodeAccelerator:: *)(media::VideoDecodeAccelerator::Config const & __ptr64) __ptr64,base::WeakPtr<media::DXVAVideoDecodeAccelerator>,media::VideoDecodeAccelerator: bind_internal.h 630 0x7ffd06e49346 
      7 base::internal::Invoker<base::internal::BindState<void (__cdecl content::NavigationURLLoaderImpl:: *)(network::URLLoaderCompletionStatus const & __ptr64) __ptr64,base::WeakPtr<content::NavigationURLLoaderImpl>,network::URLLoaderCompletionStat bind_internal.h 685 0x7ffd02e47163 
      8 base::internal::Invoker<base::internal::BindState<void (__cdecl content::NavigationURLLoaderImpl:: *)(network::URLLoaderCompletionStatus const & __ptr64) __ptr64,base::WeakPtr<content::NavigationURLLoaderImpl>,network::URLLoaderCompletionStat bind_internal.h 653 0x7ffd02e521bd 
      9 base::OnceCallback<void __cdecl(void)>::Run callback.h 99 0x7ffd005463c0 
      10 base::debug::TaskAnnotator::RunTask task_annotator.cc 103 0x7ffd037bf1f6 
      11 base::MessageLoop::RunTask message_loop.cc 423 0x7ffd036a393b 
      12 base::MessageLoop::DeferOrRunPendingTask message_loop.cc 435 0x7ffd036a1f10 
      13 base::MessageLoop::DoWork message_loop.cc 480 0x7ffd036a2662 
      14 QtWebEngineCore::`anonymous namespace'::MessagePumpForUIQt::handleScheduledWork browser_main_parts_qt.cpp 136 0x7ffd00546ec1 
      15 <lambda_18fa3e6370fb25c3a9a4449f19dc2df3>::operator() browser_main_parts_qt.cpp 96 0x7ffd00546866 
      16 std::_Invoker_functor::_Call<<lambda_18fa3e6370fb25c3a9a4449f19dc2df3> & __ptr64> type_traits 1790 0x7ffd005464cb 
      17 std::invoke<<lambda_18fa3e6370fb25c3a9a4449f19dc2df3> & __ptr64> type_traits 1790 0x7ffd005465bb 
      18 std::_Invoker_ret<void,1>::_Call<<lambda_18fa3e6370fb25c3a9a4449f19dc2df3> & __ptr64> type_traits 1816 0x7ffd005464eb 
      19 std::_Func_impl_no_alloc<<lambda_18fa3e6370fb25c3a9a4449f19dc2df3>,void>::_Do_call functional 300 0x7ffd00546e3a 
      20 std::_Func_class<void>::operator() functional 351 0x7ffd00887ace 
      ... <More>  
      

      (The FrameTreeNode has been deleted. Is set to 0xfeee...

       

      It can be repo'd with the following simple example.

      (Add an Error.html to your qrc file)

      import QtQuick 2.12
      import QtQuick.Window 2.12
      import QtWebEngine 1.5
      import QtWebView 1.1
      
      Window {
          visible: true
          width: 640
          height: 480
          title: qsTr("Hello World")
      
          WebEngineView {
              id: webview
              url: "http://11010222002200.com" // .. or something that doesn't exist
              onUrlChanged: webview.reload()
              anchors.fill: parent
              onLoadingChanged: {
                  if(loadRequest.status === WebEngineLoadRequest.LoadFailedStatus)
                  {
                      console.error(loadRequest.errorString);
                      console.log("Setting url to error file");
                      url = "qrc:/Error.html"
                  }
              }
          }
      }
      

       

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            Assignee:
            davidsz Szabolcs David
            Reporter:
            Dynite Michael Cox
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes