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

[Windows] After download is interrupted, QWebEngineDownloadRequest::resume() crashes with "Observers can only be added once!"

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • 6.8.3
    • 5.15.18, 6.8.1
    • WebEngine
    • None
    • Windows 10 22H2, MSVC 2022 x64
    • Windows
    • 56fbb0fa5 (dev), 95badf9e6 (6.9), 03cd9ecba (6.8)

    Description

      Steps to reproduce
      Follow the steps at QTBUG-132473 in Debug mode (note that Release mode doesn't crash)

       

      Outcomes
      Unlike QTBUG-132473, we don't see an extra QWebEngineDownloadRequest instance being created after the interruption. Instead, we get a crash when we call resume():

      [30924:32124:1230/114802.045:FATAL:(286)] Check failed: false. Observers can only be added once!
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE46A206D2+296829530]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE4684E04C+294919124]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE4684DFF3+294919035]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE467D0A65+294405613]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE467CEE22+294398378]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE46641479+292769793]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE46642C67+292775919]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE466410B0+292768824]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE466413F3+292769659]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F646FC1+175352649]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F6470C5+175352909]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE357250BA+8490050]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE40607FA4+191871788]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F650542+175390922]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F659E67+175430127]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F62E0A5+175250477]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F62F881+175256585]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F632931+175269049]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F661C4B+175462355]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F662849+175465425]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F659F6B+175430387]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F62E228+175250864]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F62F9B9+175256897]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F6329B1+175269177]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F661D0B+175462547]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F662849+175465425]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F62E581+175251721]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F631040+175262664]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F633222+175271338]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F6636E3+175469163]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE357C1301+9129609]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE466F2B59+293496545]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE468029C7+294610255]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE46817C7E+294696966]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE46816D18+294693024]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3568444C+7831508]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE356823A6+7823150]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE35681663+7819755]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3568404A+7830482]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE35604AFF+7308935]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3560487D+7308293]
      	QFileInfo::filePath [0x00007FFE7130E53E+2720309]
      	QLineEdit::`default constructor closure' [0x00007FFE69AB61AB+222479]
      	QLineEdit::`default constructor closure' [0x00007FFE69AB35DC+211264]
      	QFileInfo::filePath [0x00007FFE71254F47+1961022]
      	QFileInfo::filePath [0x00007FFE7125247B+1950066]
      	QFileInfo::filePath [0x00007FFE71258025+1973532]
      	QFileInfo::filePath [0x00007FFE716A7A9F+6494102]
      	QColorSpace::isValidTarget [0x00007FFE31F843A5+10132656]
      	QFileInfo::filePath [0x00007FFE716A5DAF+6486694]
      	QColorSpace::isValidTarget [0x00007FFE31F8435B+10132582]
      	QFileInfo::filePath [0x00007FFE71273CDC+2087379]
      	QFileInfo::filePath [0x00007FFE71273FE4+2088155]
      	QFileInfo::filePath [0x00007FFE7125220A+1949441]
      	QColorSpace::isValidTarget [0x00007FFE3177354A+1674837]
      	QLineEdit::`default constructor closure' [0x00007FFE69AB023C+198048]
      	main [0x00007FF652723F8B+1227] (D:\DownloadInterruptionStudy\client\main.cpp:53)
      	qtEntryPoint [0x00007FF652735DDA+74] (C:\Users\qt\work\qt\qtbase\src\entrypoint\qtentrypoint_win.cpp:45)
      	WinMain [0x00007FF652735C8E+30] (C:\Users\qt\work\qt\qtbase\src\entrypoint\qtentrypoint_win.cpp:64)
      	invoke_main [0x00007FF652733E02+50] (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:107)
      	__scrt_common_main_seh [0x00007FF652733CEE+302] (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
      	__scrt_common_main [0x00007FF652733BAE+14] (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:331)
      	WinMainCRTStartup [0x00007FF652733E9E+14] (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_winmain.cpp:17)
      	BaseThreadInitThunk [0x00007FFF248D7374+20]
      	RtlUserThreadStart [0x00007FFF25FDCC91+33]
      Task trace:
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F6543AC+175406900]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F666442+175480778]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE3F69D67E+175706630]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE4819B002+321448842]
      	QWebEnginePage::setUrlRequestInterceptor [0x00007FFE46FC7CB7+302757951]
      

      Attachments

        Issue Links

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

          Activity

            People

              davidsz Szabolcs David
              skoh-qt Sze Howe Koh
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes