Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segfault in DownloadItem.origin() #7854

Closed
The-Compiler opened this issue Aug 22, 2023 · 5 comments
Closed

Segfault in DownloadItem.origin() #7854

The-Compiler opened this issue Aug 22, 2023 · 5 comments
Labels
bug: segfault/crash/hang There's a low-level crash in C++, or a hang/freeze. component: downloads Issues related to downloads. component: QtWebEngine Issues related to the QtWebEngine backend, based on Chromium. priority: 1 - middle Issues which should be done at some point, but aren't that important. qt Issues related to the Qt framework. qt: 6 Issues related to Qt 6.

Comments

@The-Compiler
Copy link
Member

The-Compiler commented Aug 22, 2023

Version info:

qutebrowser v3.0.0
Git commit: 
Backend: QtWebEngine 6.5.2, based on Chromium 108.0.5359.220 (from api)
Qt: 6.5.2

Does the bug happen if you start with --temp-basedir?: unknown

Description

Fatal Python error: Segmentation fault

Current thread 0x000000011bac4600 (most recent call first):
  File "qutebrowser/browser/webengine/webenginedownloads.py", line 126 in origin
  File "qutebrowser/browser/downloads.py", line 820 in cancel_for_origin
  File "qutebrowser/browser/webengine/webenginedownloads.py", line 298 in handle_download
  File "qutebrowser/app.py", line 125 in qt_mainloop
  File "qutebrowser/app.py", line 115 in run
  File "qutebrowser/qutebrowser.py", line 231 in main
  File "qutebrowser/__main__.py", line 15 in <module>

That is here:

def origin(self) -> QUrl:
page = self._qt_item.page()
return page.url() if page else QUrl()

Reports: 169273992283.3258.13604852731635742755@crashes.qutebrowser.org and 169270650979.3258.6134579206996944692@crashes.qutebrowser.org

How to reproduce

Unknown, possibly retrying a download. @theitalianweeb do you know how to reproduce it? If you can, I think you should get a macOS crash dialog? If that happens, can you show the details and copy them here (instead of sending it to Apple)?

@The-Compiler The-Compiler added qt Issues related to the Qt framework. component: downloads Issues related to downloads. priority: 1 - middle Issues which should be done at some point, but aren't that important. component: QtWebEngine Issues related to the QtWebEngine backend, based on Chromium. bug: segfault/crash/hang There's a low-level crash in C++, or a hang/freeze. qt: 6 Issues related to Qt 6. labels Aug 22, 2023
@The-Compiler The-Compiler added this to the v3.0.1 milestone Aug 22, 2023
@theitalianweeb
Copy link

Honestly I don't remember seeing any MacOS crash dialog, and if it did, I must have dismissed it. I can help you if you know a place where MacOS stores past crash logs. If memory serves me right, though, I was downloading the file, then I stopped using the laptop and closed it, so that's maybe why the download failed. If it's pertinent to the crash, I don't know, but I still wrote it in case it's helpful

@emanuele6
Copy link
Contributor

@The-Compiler asked me to post the coredump info of the crash here. I got a segfault today after doing "Right Click" -> "Retry" on a failed download (due to insufficient disk space); qutebrowser started not responding for a bit, and then it crashed:
coredumpctl info 972774

           PID: 972774 (qutebrowser)
           UID: 1000 (emanuele6)
           GID: 998 (wheel)
        Signal: 11 (SEGV)
     Timestamp: Mon 2023-09-04 12:40:10 CEST (8h ago)
  Command Line: /usr/bin/python3 /usr/bin/qutebrowser
    Executable: /usr/bin/python3.11
 Control Group: /user.slice/user-1000.slice/session-4.scope
          Unit: session-4.scope
         Slice: user-1000.slice
       Session: 4
     Owner UID: 1000 (emanuele6)
       Boot ID: a7fc0c45953a44c08fd1223b070e251c
    Machine ID: f714a39033a14ee5ba3c6d33fd02dad8
      Hostname: t420
       Storage: /var/lib/systemd/coredump/core.qutebrowser.1000.a7fc0c45953a44c08fd1223b070e251c.972774.1693824010000000.zst (present)
  Size on Disk: 156.2M
       Message: Process 972774 (qutebrowser) of user 1000 dumped core.
                
                Stack trace of thread 972774:
                #0  0x00007fcf5e88e83c n/a (libc.so.6 + 0x8e83c)
                #1  0x00007fcf5e83e668 raise (libc.so.6 + 0x3e668)
                #2  0x00007fcf5e83e710 n/a (libc.so.6 + 0x3e710)
                #3  0x00007fcf50d453e7 _ZNK25QWebEngineDownloadRequest4pageEv (libQt6WebEngineCore.so.6 + 0x41453e7)
                #4  0x00007fcf3da26450 n/a (QtWebEngineCore.abi3.so + 0x3a450)
                #5  0x00007fcf5edfada8 n/a (libpython3.11.so.1.0 + 0x1fada8)
                #6  0x00007fcf5edda04c _PyObject_MakeTpCall (libpython3.11.so.1.0 + 0x1da04c)
                #7  0x00007fcf5ede44c9 _PyEval_EvalFrameDefault (libpython3.11.so.1.0 + 0x1e44c9)
                #8  0x00007fcf5ee2cb73 n/a (libpython3.11.so.1.0 + 0x22cb73)
                #9  0x00007fcf5ee2c05e n/a (libpython3.11.so.1.0 + 0x22c05e)
                #10 0x00007fcf5cffcd21 n/a (QtCore.abi3.so + 0x1fcd21)
                #11 0x00007fcf5d004f00 n/a (QtCore.abi3.so + 0x204f00)
                #12 0x00007fcf5cfea821 n/a (QtCore.abi3.so + 0x1ea821)
                #13 0x00007fcf5c99140d n/a (libQt6Core.so.6 + 0x19140d)
                #14 0x00007fcf50d61978 _ZN24QWebEngineProfilePrivate17downloadRequestedERN15QtWebEngineCore20ProfileAdapterClient16DownloadItemInfoE (libQt6WebEngineCore.so.6 + 0x4161978)
                #15 0x00007fcf4d72ad95 n/a (libQt6WebEngineCore.so.6 + 0xb2ad95)
                #16 0x00007fcf4f9fe40b n/a (libQt6WebEngineCore.so.6 + 0x2dfe40b)
                #17 0x00007fcf4f602c3f n/a (libQt6WebEngineCore.so.6 + 0x2a02c3f)
                #18 0x00007fcf4f60fb71 n/a (libQt6WebEngineCore.so.6 + 0x2a0fb71)
                #19 0x00007fcf4f60ffde n/a (libQt6WebEngineCore.so.6 + 0x2a0ffde)
                #20 0x00007fcf4f5fb9f5 n/a (libQt6WebEngineCore.so.6 + 0x29fb9f5)
                #21 0x00007fcf50de236d n/a (libQt6WebEngineCore.so.6 + 0x41e236d)
                #22 0x00007fcf50dfb707 n/a (libQt6WebEngineCore.so.6 + 0x41fb707)
                #23 0x00007fcf50dfc0d6 n/a (libQt6WebEngineCore.so.6 + 0x41fc0d6)
                #24 0x00007fcf4d6f9cb2 n/a (libQt6WebEngineCore.so.6 + 0xaf9cb2)
                #25 0x00007fcf5c97d0b6 _ZN7QObject5eventEP6QEvent (libQt6Core.so.6 + 0x17d0b6)
                #26 0x00007fcf5897136b _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt6Widgets.so.6 + 0x17136b)
                #27 0x00007fcf5935e9c7 n/a (QtWidgets.abi3.so + 0x35e9c7)
                #28 0x00007fcf5c93b718 _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt6Core.so.6 + 0x13b718)
                #29 0x00007fcf5c93ba9b _ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData (libQt6Core.so.6 + 0x13ba9b)
                #30 0x00007fcf5cb34854 n/a (libQt6Core.so.6 + 0x334854)
                #31 0x00007fcf5d4e5a31 n/a (/usr/lib/libglib-2.0.so.0.7600.4 (deleted) + 0x5aa31)
                ELF object binary architecture: AMD x86-64

coredumpctl gdb 972774:

[Current thread is 1 (Thread 0x7fcf5f24d740 (LWP 972774))]
(gdb) bt
#0  0x00007fcf5e88e83c in  () at /usr/lib/libc.so.6                                                                                                                       
#1  0x00007fcf5e83e668 in raise () at /usr/lib/libc.so.6                                                                                                                  
#2  0x00007fcf5e83e710 in <signal handler called> () at /usr/lib/libc.so.6                                                                                                
#3  0x00007fcf50d453e7 in QWebEngineDownloadRequest::page() const () at /usr/lib/libQt6WebEngineCore.so.6                                                                 
#4  0x00007fcf3da26450 in  () at /usr/lib/python3.11/site-packages/PyQt6/QtWebEngineCore.abi3.so                                                                          
#5  0x00007fcf5edfada8 in  () at /usr/lib/libpython3.11.so.1.0                                                                                                            
#6  0x00007fcf5edda04c in _PyObject_MakeTpCall () at /usr/lib/libpython3.11.so.1.0                                                                                        
#7  0x00007fcf5ede44c9 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.11.so.1.0                                                                                    
#8  0x00007fcf5ee2cb73 in  () at /usr/lib/libpython3.11.so.1.0                                                                                                            
#9  0x00007fcf5ee2c05e in  () at /usr/lib/libpython3.11.so.1.0                                                                                                            
#10 0x00007fcf5cffcd21 in  () at /usr/lib/python3.11/site-packages/PyQt6/QtCore.abi3.so                                                                                   
#11 0x00007fcf5d004f00 in  () at /usr/lib/python3.11/site-packages/PyQt6/QtCore.abi3.so                                                                                   
#12 0x00007fcf5cfea821 in  () at /usr/lib/python3.11/site-packages/PyQt6/QtCore.abi3.so                                                                                   
#13 0x00007fcf5c99140d in  () at /usr/lib/libQt6Core.so.6                                                                                                                 
#14 0x00007fcf50d61978 in QWebEngineProfilePrivate::downloadRequested(QtWebEngineCore::ProfileAdapterClient::DownloadItemInfo&) () at /usr/lib/libQt6WebEngineCore.so.6   
#15 0x00007fcf4d72ad95 in  () at /usr/lib/libQt6WebEngineCore.so.6                                                                                                        
#16 0xffffffff00000002 in  ()                                                                                                                                             
#17 0x00007ffd9a680e58 in  ()                                                                                                                                             
#18 0x0000000000000000 in  ()   

@emanuele6
Copy link
Contributor

@The-Compiler

bt full in coredumpctl gdb with debuginfod enabled

Core was generated by `/usr/bin/python3 /usr/bin/qutebrowser'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44
Downloading source file /usr/src/debug/glibc/glibc/nptl/pthread_kill.c
44            return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0;
[Current thread is 1 (Thread 0x7fcf5f24d740 (LWP 972774))]
(gdb) bt full
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44
        tid = <optimized out>
        ret = 0
        pd = <optimized out>
        old_mask = {__val = {0}}
        ret = <optimized out>
#1  0x00007fcf5e88e8a3 in __pthread_kill_internal (signo=11, threadid=<optimized out>) at pthread_kill.c:78
#2  0x00007fcf5e83e668 in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
        ret = <optimized out>
#3  0x00007fcf5e83e710 in <signal handler called> () at /usr/lib/libc.so.6
#4  0x00007fcf50d453e7 in QWebEngineDownloadRequest::page() const (this=<optimized out>)
    at /usr/src/debug/qt6-webengine/qtwebengine-everywhere-src-6.5.2/src/core/api/qwebenginedownloadrequest.cpp:604
#5  0x00007fcf3da26450 in meth_QWebEngineDownloadRequest_page(PyObject*, PyObject*) (sipSelf=<optimized out>, sipArgs=<optimized out>)
    at /usr/src/debug/pyqt6-webengine/PyQt6_WebEngine-6.5.0/build/QtWebEngineCore/sipQtWebEngineCoreQWebEngineDownloadRequest.cpp:545
        sipRes = <optimized out>
        sipCpp = 0x7fceec2c6820
        sipParseErr = 0x0
#6  0x00007fcf5edfada8 in cfunction_call (func=0x7fcf0d64d850, args=<optimized out>, kwargs=<optimized out>) at Objects/methodobject.c:553
        tstate = 0x7fcf5f189b78 <_PyRuntime+166328>
        flags = <optimized out>
        meth = <optimized out>
        self = <optimized out>
        result = <optimized out>
#7  0x00007fcf5edda04c in _PyObject_MakeTpCall (tstate=0x7fcf5f189b78 <_PyRuntime+166328>, callable=0x7fcf0d64d850, args=<optimized out>, nargs=0, keywords=0x0)
    at Objects/call.c:214
        call = <optimized out>
        argstuple = <optimized out>
        kwdict = 0x0
        result = 0x0
#8  0x00007fcf5ede44c9 in _PyEval_EvalFrameDefault (tstate=<optimized out>, frame=<optimized out>, throwflag=<optimized out>) at Python/ceval.c:4774
        is_meth = 0
        total_args = 0
        function = 0x7fcf0d64d850
        res = <optimized out>
        opcode = <optimized out>
        oparg = <optimized out>
        eval_breaker = <optimized out>
        cframe = {use_tracing = 0 '\000', current_frame = 0x7fcf5f346378, previous = 0x7ffd9a681c70}
        call_shape = {kwnames = 0x0}
        prev_cframe = <optimized out>
        names = <optimized out>
        consts = <optimized out>
        first_instr = <optimized out>
        next_instr = 0x7fcf3d2e9152
        stack_pointer = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--c
        dying = <optimized out>
        __func__ = "_PyEval_EvalFrameDefault"
        opcode_targets = {0x7fcf5ecfe0f7 <_PyEval_EvalFrameDefault-941177>, 0x7fcf5ede4733 <_PyEval_EvalFrameDefault+2499>, 0x7fcf5ede4390 <_PyEval_EvalFrameDefault+1568>, 0x7fcf5ede6958 <_PyEval_EvalFrameDefault+11240>, 0x7fcf5ede7577 <_PyEval_EvalFrameDefault+14343>, 0x7fcf5ede57cd <_PyEval_EvalFrameDefault+6749>, 0x7fcf5ede7998 <_PyEval_EvalFrameDefault+15400>, 0x7fcf5ede8f48 <_PyEval_EvalFrameDefault+20952>, 0x7fcf5ede4edf <_PyEval_EvalFrameDefault+4463>, 0x7fcf5ede5c24 <_PyEval_EvalFrameDefault+7860>, 0x7fcf5ede9339 <_PyEval_EvalFrameDefault+21961>, 0x7fcf5ede856b <_PyEval_EvalFrameDefault+18427>, 0x7fcf5ede8c48 <_PyEval_EvalFrameDefault+20184>, 0x7fcf5ede655f <_PyEval_EvalFrameDefault+10223>, 0x7fcf5ede6c26 <_PyEval_EvalFrameDefault+11958>, 0x7fcf5ede9c24 <_PyEval_EvalFrameDefault+24244>, 0x7fcf5ede5ef7 <_PyEval_EvalFrameDefault+8583>, 0x7fcf5ede4cfc <_PyEval_EvalFrameDefault+3980>, 0x7fcf5ede6b89 <_PyEval_EvalFrameDefault+11801>, 0x7fcf5ede8e10 <_PyEval_EvalFrameDefault+20640>, 0x7fcf5ede5e08 <_PyEval_EvalFrameDefault+8344>, 0x7fcf5ede7bdb <_PyEval_EvalFrameDefault+15979>, 0x7fcf5ede4427 <_PyEval_EvalFrameDefault+1719>, 0x7fcf5ede4a22 <_PyEval_EvalFrameDefault+3250>, 0x7fcf5ede5948 <_PyEval_EvalFrameDefault+7128>, 0x7fcf5ede8150 <_PyEval_EvalFrameDefault+17376>, 0x7fcf5ede5d76 <_PyEval_EvalFrameDefault+8198>, 0x7fcf5ede7878 <_PyEval_EvalFrameDefault+15112>, 0x7fcf5ede4778 <_PyEval_EvalFrameDefault+2568>, 0x7fcf5ede6872 <_PyEval_EvalFrameDefault+11010>, 0x7fcf5edea197 <_PyEval_EvalFrameDefault+25639>, 0x7fcf5ede9925 <_PyEval_EvalFrameDefault+23477>, 0x7fcf5ede98cb <_PyEval_EvalFrameDefault+23387>, 0x7fcf5edea1f4 <_PyEval_EvalFrameDefault+25732>, 0x7fcf5ede6844 <_PyEval_EvalFrameDefault+10964>, 0x7fcf5ede82d9 <_PyEval_EvalFrameDefault+17769>, 0x7fcf5ede86aa <_PyEval_EvalFrameDefault+18746>, 0x7fcf5ecffc58 <_PyEval_EvalFrameDefault-934168>, 0x7fcf5ede4600 <_PyEval_EvalFrameDefault+2192>, 0x7fcf5ede4c7d <_PyEval_EvalFrameDefault+3853>, 0x7fcf5ede4b94 <_PyEval_EvalFrameDefault+3620>, 0x7fcf5ede5cdb <_PyEval_EvalFrameDefault+8043>, 0x7fcf5ede5343 <_PyEval_EvalFrameDefault+5587>, 0x7fcf5ede7d26 <_PyEval_EvalFrameDefault+16310>, 0x7fcf5ede5761 <_PyEval_EvalFrameDefault+6641>, 0x7fcf5ede4c12 <_PyEval_EvalFrameDefault+3746>, 0x7fcf5ede3f17 <_PyEval_EvalFrameDefault+423>, 0x7fcf5ede91fb <_PyEval_EvalFrameDefault+21643>, 0x7fcf5ede40df <_PyEval_EvalFrameDefault+879>, 0x7fcf5ede9c7e <_PyEval_EvalFrameDefault+24334>, 0x7fcf5ecfdcf5 <_PyEval_EvalFrameDefault-942203>, 0x7fcf5ecfd9e4 <_PyEval_EvalFrameDefault-942988>, 0x7fcf5ecfe12b <_PyEval_EvalFrameDefault-941125>, 0x7fcf5ede83da <_PyEval_EvalFrameDefault+18026>, 0x7fcf5ecfe9a3 <_PyEval_EvalFrameDefault-938957>, 0x7fcf5ede42f7 <_PyEval_EvalFrameDefault+1415>, 0x7fcf5ede528f <_PyEval_EvalFrameDefault+5407>, 0x7fcf5ede8ff9 <_PyEval_EvalFrameDefault+21129>, 0x7fcf5ede8333 <_PyEval_EvalFrameDefault+17859>, 0x7fcf5ede46c8 <_PyEval_EvalFrameDefault+2392>, 0x7fcf5ede98ba <_PyEval_EvalFrameDefault+23370>, 0x7fcf5ede8ae0 <_PyEval_EvalFrameDefault+19824>, 0x7fcf5ede6a43 <_PyEval_EvalFrameDefault+11475>, 0x7fcf5ede4d8b <_PyEval_EvalFrameDefault+4123>, 0x7fcf5ede4645 <_PyEval_EvalFrameDefault+2261>, 0x7fcf5ede5203 <_PyEval_EvalFrameDefault+5267>, 0x7fcf5ede66b2 <_PyEval_EvalFrameDefault+10562>, 0x7fcf5ede7658 <_PyEval_EvalFrameDefault+14568>, 0x7fcf5ede625b <_PyEval_EvalFrameDefault+9451>, 0x7fcf5edea385 <_PyEval_EvalFrameDefault+26133>, 0x7fcf5ede9393 <_PyEval_EvalFrameDefault+22051>, 0x7fcf5ede984c <_PyEval_EvalFrameDefault+23260>, 0x7fcf5ede6ccb <_PyEval_EvalFrameDefault+12123>, 0x7fcf5ede5041 <_PyEval_EvalFrameDefault+4817>, 0x7fcf5ecfe7df <_PyEval_EvalFrameDefault-939409>, 0x7fcf5ede8161 <_PyEval_EvalFrameDefault+17393>, 0x7fcf5ede486c <_PyEval_EvalFrameDefault+2812>, 0x7fcf5ede5624 <_PyEval_EvalFrameDefault+6324>, 0x7fcf5ede612a <_PyEval_EvalFrameDefault+9146>, 0x7fcf5ede70b7 <_PyEval_EvalFrameDefault+13127>, 0x7fcf5ede549c <_PyEval_EvalFrameDefault+5932>, 0x7fcf5ede6367 <_PyEval_EvalFrameDefault+9719>, 0x7fcf5ede95f6 <_PyEval_EvalFrameDefault+22662>, 0x7fcf5ede3fd2 <_PyEval_EvalFrameDefault+610>, 0x7fcf5edea4ad <_PyEval_EvalFrameDefault+26429>, 0x7fcf5ede9661 <_PyEval_EvalFrameDefault+22769>, 0x7fcf5ede5fd2 <_PyEval_EvalFrameDefault+8802>, 0x7fcf5ecfed87 <_PyEval_EvalFrameDefault-937961>, 0x7fcf5ecfe824 <_PyEval_EvalFrameDefault-939340>, 0x7fcf5ede80f3 <_PyEval_EvalFrameDefault+17283>, 0x7fcf5ede85c4 <_PyEval_EvalFrameDefault+18516>, 0x7fcf5ede9774 <_PyEval_EvalFrameDefault+23044>, 0x7fcf5ede97cf <_PyEval_EvalFrameDefault+23135>, 0x7fcf5ede4298 <_PyEval_EvalFrameDefault+1320>, 0x7fcf5ede9b02 <_PyEval_EvalFrameDefault+23954>, 0x7fcf5ede88d9 <_PyEval_EvalFrameDefault+19305>, 0x7fcf5ede7511 <_PyEval_EvalFrameDefault+14241>, 0x7fcf5ede970c <_PyEval_EvalFrameDefault+22940>, 0x7fcf5ecff59f <_PyEval_EvalFrameDefault-935889>, 0x7fcf5ede60e2 <_PyEval_EvalFrameDefault+9074>, 0x7fcf5ede3ecf <_PyEval_EvalFrameDefault+351>, 0x7fcf5ede885f <_PyEval_EvalFrameDefault+19183>, 0x7fcf5ede6477 <_PyEval_EvalFrameDefault+9991>, 0x7fcf5ede6ed0 <_PyEval_EvalFrameDefault+12640>, 0x7fcf5ede9465 <_PyEval_EvalFrameDefault+22261>, 0x7fcf5ede6ad1 <_PyEval_EvalFrameDefault+11617>, 0x7fcf5ede7dec <_PyEval_EvalFrameDefault+16508>, 0x7fcf5ede60d1 <_PyEval_EvalFrameDefault+9057>, 0x7fcf5edea0a2 <_PyEval_EvalFrameDefault+25394>, 0x7fcf5edea020 <_PyEval_EvalFrameDefault+25264>, 0x7fcf5ede572f <_PyEval_EvalFrameDefault+6591>, 0x7fcf5ede74c5 <_PyEval_EvalFrameDefault+14165>, 0x7fcf5ede8507 <_PyEval_EvalFrameDefault+18327>, 0x7fcf5ede71d0 <_PyEval_EvalFrameDefault+13408>, 0x7fcf5ede43cc <_PyEval_EvalFrameDefault+1628>, 0x7fcf5ede49c7 <_PyEval_EvalFrameDefault+3159>, 0x7fcf5ede7a46 <_PyEval_EvalFrameDefault+15574>, 0x7fcf5ede5b5d <_PyEval_EvalFrameDefault+7661>, 0x7fcf5ede62b4 <_PyEval_EvalFrameDefault+9540>, 0x7fcf5ede9d20 <_PyEval_EvalFrameDefault+24496>, 0x7fcf5ede604c <_PyEval_EvalFrameDefault+8924>, 0x7fcf5ede822b <_PyEval_EvalFrameDefault+17595>, 0x7fcf5ede4fc0 <_PyEval_EvalFrameDefault+4688>, 0x7fcf5ede6f3a <_PyEval_EvalFrameDefault+12746>, 0x7fcf5ede3e7f <_PyEval_EvalFrameDefault+271>, 0x7fcf5ede423e <_PyEval_EvalFrameDefault+1230>, 0x7fcf5ede9bc9 <_PyEval_EvalFrameDefault+24153>, 0x7fcf5ede9075 <_PyEval_EvalFrameDefault+21253>, 0x7fcf5ede5bd1 <_PyEval_EvalFrameDefault+7777>, 0x7fcf5ede5ea9 <_PyEval_EvalFrameDefault+8505>, 0x7fcf5ede997f <_PyEval_EvalFrameDefault+23567>, 0x7fcf5ecfd835 <_PyEval_EvalFrameDefault-943419>, 0x7fcf5ede77d9 <_PyEval_EvalFrameDefault+14953>, 0x7fcf5ede6e6c <_PyEval_EvalFrameDefault+12540>, 0x7fcf5ede7082 <_PyEval_EvalFrameDefault+13074>, 0x7fcf5ede7301 <_PyEval_EvalFrameDefault+13713>, 0x7fcf5ede80a3 <_PyEval_EvalFrameDefault+17203>, 0x7fcf5ede41ea <_PyEval_EvalFrameDefault+1146>, 0x7fcf5ede88ea <_PyEval_EvalFrameDefault+19322>, 0x7fcf5ede9b72 <_PyEval_EvalFrameDefault+24066>, 0x7fcf5ede9418 <_PyEval_EvalFrameDefault+22184>, 0x7fcf5ede5182 <_PyEval_EvalFrameDefault+5138>, 0x7fcf5ede7e9d <_PyEval_EvalFrameDefault+16685>, 0x7fcf5ede4964 <_PyEval_EvalFrameDefault+3060>, 0x7fcf5ede91c0 <_PyEval_EvalFrameDefault+21584>, 0x7fcf5ede53b4 <_PyEval_EvalFrameDefault+5700>, 0x7fcf5ede7169 <_PyEval_EvalFrameDefault+13305>, 0x7fcf5ede9134 <_PyEval_EvalFrameDefault+21444>, 0x7fcf5ede9a75 <_PyEval_EvalFrameDefault+23813>, 0x7fcf5ede4e15 <_PyEval_EvalFrameDefault+4261>, 0x7fcf5ede3f8b <_PyEval_EvalFrameDefault+539>, 0x7fcf5ede8b50 <_PyEval_EvalFrameDefault+19936>, 0x7fcf5edea3f8 <_PyEval_EvalFrameDefault+26248>, 0x7fcf5ede7c8d <_PyEval_EvalFrameDefault+16157>, 0x7fcf5ede58aa <_PyEval_EvalFrameDefault+6970>, 0x7fcf5ede7fe3 <_PyEval_EvalFrameDefault+17011>, 0x7fcf5edea556 <_PyEval_EvalFrameDefault+26598>, 0x7fcf5ede8735 <_PyEval_EvalFrameDefault+18885>, 0x7fcf5ede6638 <_PyEval_EvalFrameDefault+10440>, 0x7fcf5ede89c8 <_PyEval_EvalFrameDefault+19544>, 0x7fcf5ede7b3b <_PyEval_EvalFrameDefault+15819>, 0x7fcf5ede4067 <_PyEval_EvalFrameDefault+759>, 0x7fcf5ede958b <_PyEval_EvalFrameDefault+22555>, 0x7fcf5ede94c7 <_PyEval_EvalFrameDefault+22359>, 0x7fcf5ede8647 <_PyEval_EvalFrameDefault+18647>, 0x7fcf5ede9528 <_PyEval_EvalFrameDefault+22456>, 0x7fcf5ede6f29 <_PyEval_EvalFrameDefault+12729>, 0x7fcf5ede5416 <_PyEval_EvalFrameDefault+5798>, 0x7fcf5ede7dfd <_PyEval_EvalFrameDefault+16525>, 0x7fcf5ede6980 <_PyEval_EvalFrameDefault+11280>, 0x7fcf5ede6fd5 <_PyEval_EvalFrameDefault+12901>, 0x7fcf5ede45ad <_PyEval_EvalFrameDefault+2109>, 0x7fcf5ede6091 <_PyEval_EvalFrameDefault+8993>, 0x7fcf5ede8dc5 <_PyEval_EvalFrameDefault+20565>, 0x7fcf5ede92e9 <_PyEval_EvalFrameDefault+21881>, 0x7fcf5ede7b4c <_PyEval_EvalFrameDefault+15836>, 0x7fcf5ede893d <_PyEval_EvalFrameDefault+19405>, 0x7fcf5edea52e <_PyEval_EvalFrameDefault+26558>, 0x7fcf5ede8cac <_PyEval_EvalFrameDefault+20284>, 0x7fcf5ede73be <_PyEval_EvalFrameDefault+13902>, 0x7fcf5ede5c53 <_PyEval_EvalFrameDefault+7907>, 0x7fcf5ecff7a4 <_PyEval_EvalFrameDefault-935372> <repeats 74 times>, 0x7fcf5ede9eb9 <_PyEval_EvalFrameDefault+24905>}
#9  0x00007fcf5ee2cb73 in _PyEval_EvalFrame (throwflag=0, frame=0x7fcf5f346218, tstate=0x7fcf5f189b78 <_PyRuntime+166328>) at ./Include/internal/pycore_ceval.h:73
        frame = 0x7fcf5f346218
        retval = <optimized out>
        f = 0x7fcf3cfdea20
        nargs = <optimized out>
        tstate = 0x7fcf5f189b78 <_PyRuntime+166328>
        func = <optimized out>
        res = <optimized out>
#10 _PyEval_Vector (kwnames=<optimized out>, argcount=<optimized out>, args=0x7ffd9a6809c0, locals=0x0, func=0x7fcf3cfdea20, tstate=0x7fcf5f189b78 <_PyRuntime+166328>)
    at Python/ceval.c:6439
        frame = 0x7fcf5f346218
        retval = <optimized out>
        f = 0x7fcf3cfdea20
        nargs = <optimized out>
        tstate = 0x7fcf5f189b78 <_PyRuntime+166328>
        func = <optimized out>
        res = <optimized out>
#11 _PyFunction_Vectorcall (kwnames=<optimized out>, nargsf=<optimized out>, stack=0x7ffd9a6809c0, func=0x7fcf3cfdea20) at Objects/call.c:393
        f = 0x7fcf3cfdea20
        nargs = <optimized out>
        tstate = 0x7fcf5f189b78 <_PyRuntime+166328>
        func = <optimized out>
        res = <optimized out>
#12 _PyObject_VectorcallTstate (tstate=0x7fcf5f189b78 <_PyRuntime+166328>, callable=0x7fcf3cfdea20, args=0x7ffd9a6809c0, nargsf=<optimized out>, kwnames=<optimized out>)
    at ./Include/internal/pycore_call.h:92
        func = <optimized out>
        res = <optimized out>
#13 0x00007fcf5ee2c05e in method_vectorcall (method=<optimized out>, args=0x7fcf26f12158, nargsf=<optimized out>, kwnames=0x0) at Objects/classobject.c:89
        newargs_stack = {0x7fcf24411360, 0x7fcf26967f40, 0x7ffd9a680cb0, 0x7fcf5d1057a0 <QtPrivate::QMetaTypeInterfaceWrapper<PyQt_PyObject>::metaType>, 0x27}
        newargs = 0x7ffd9a6809c0
        tstate = 0x7fcf5f189b78 <_PyRuntime+166328>
        self = 0x7fcf24411360
        func = 0x7fcf3cfdea20
        nargs = 1
        result = <optimized out>
#14 0x00007fcf5cffcd21 in PyQtSlot::call(_object*, _object*) const (this=0x558dfba2bbf0, args=0x7fcf26f12140, callable=0x7fcef072df40)
    at ../../qpy/QtCore/qpycore_pyqtslot.cpp:235
        nsa = <optimized out>
        xtype = 0x558df9bb5710
        xvalue = 0x7fcf5d0ec060 <sipTypeDef_QtCore_QObject>
        xtb = 0x7fcf3cfdea20
        res = <optimized out>
        sa = 0x7fcf26f12140
        oxtype = <optimized out>
        oxvalue = <optimized out>
        oxtb = <optimized out>
        callable = 0x7fcef072df40
        args = <optimized out>
        argtup = 0x7fcf26f12140
        it = {i = <optimized out>}
        res = <optimized out>
        ok = <optimized out>
#15 PyQtSlot::invoke(void**, _object*, void*, bool) const (this=0x558dfba2bbf0, qargs=<optimized out>, qargs@entry=0x7ffd9a680cd0, self=<optimized out>,
    self@entry=0x7fcf24411360, result=0x0, no_receiver_check=no_receiver_check@entry=false) at ../../qpy/QtCore/qpycore_pyqtslot.cpp:152
        callable = 0x7fcef072df40
        args = <optimized out>
        argtup = 0x7fcf26f12140
        it = {i = <optimized out>}
        res = <optimized out>
        ok = <optimized out>
#16 0x00007fcf5d004f00 in PyQtSlot::invoke(void**, _object*, void*) const (result=<optimized out>, self=0x7fcf24411360, qargs=0x7ffd9a680cd0, this=<optimized out>)
    at ../../qpy/QtCore/qpycore_pyqtslot.cpp:81
        slot = <optimized out>
        tp_base = <optimized out>
        qo = 0x558dfba2a610
        ok = true
#17 qt_metacall_worker(sipSimpleWrapper*, PyTypeObject*, sipTypeDef*, QMetaObject::Call, int, void**)
    (pySelf=0x7fcf24411360, pytype=0x558df9d31fe0, base=<optimized out>, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7ffd9a680cd0)
    at ../../qpy/QtCore/qpycore_qobject_helpers.cpp:108
        slot = <optimized out>
        tp_base = <optimized out>
        qo = 0x558dfba2a610
        ok = true
#18 0x00007fcf5cfea821 in sipQObject::qt_metacall(QMetaObject::Call, int, void**) (this=0x558dfba242f0, _c=QMetaObject::InvokeMetaMethod, _id=11, _a=0x7ffd9a680cd0)
    at /usr/src/debug/pyqt6/PyQt6-6.5.2/build/QtCore/sipQtCoreQObject.cpp:358
        sipGIL = PyGILState_UNLOCKED
#19 0x00007fcf5c99140d in doActivate<false>(QObject*, int, void**) (sender=0x558dfba2b0e0, signal_index=3, argv=0x7ffd9a680cd0)
    at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.5.2/src/corelib/kernel/qobject.cpp:4018
        method = <optimized out>
        receiver = 0x558dfba242f0
        td = <optimized out>
        receiverInSameThread = <optimized out>
        senderData = {previous = 0x0, receiver = 0x558dfba242f0, sender = 0x558dfba2b0e0, signal = 3}
        c = 0x558dfbc409e0
        connections = {d = 0x558dfbb10fe0}
        list = <optimized out>
        inSenderThread = <optimized out>
        highestConnectionId = <optimized out>
        signalVector = <optimized out>
        currentThreadId = <optimized out>
        sp = <optimized out>
        signal_spy_set = 0x0
        empty_argv = {0x0}
        senderDeleted = false
#20 0x00007fcf50d61978 in QWebEngineProfile::downloadRequested(QWebEngineDownloadRequest*) (_t1=0x7fceec2c6820, this=0x558dfba2b0e0)
    at /usr/src/debug/qt6-webengine/build/src/core/api/WebEngineCore_autogen/include/moc_qwebengineprofile.cpp:213
        _a = {0x0, 0x7ffd9a680cb0}
        q = 0x558dfba2b0e0
        itemPrivate = <optimized out>
        download = 0x7fceec2c6820
        state = <optimized out>
#21 QWebEngineProfilePrivate::downloadRequested(QtWebEngineCore::ProfileAdapterClient::DownloadItemInfo&) (this=0x558dfba2c090, info=...)
    at /usr/src/debug/qt6-webengine/qtwebengine-everywhere-src-6.5.2/src/core/api/qwebengineprofile.cpp:213
        q = 0x558dfba2b0e0
        itemPrivate = <optimized out>
        download = 0x7fceec2c6820
        state = <optimized out>
#22 0x00007fcf4d72ad95 in QtWebEngineCore::DownloadManagerDelegateQt::DetermineDownloadTarget(download::DownloadItem*, base::OnceCallback<void (base::FilePath const&, download::DownloadItem::TargetDisposition, download::DownloadDangerType, download::DownloadItem::MixedContentStatus, base::FilePath const&, base::FilePath const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, download::DownloadInterruptReason)>*) ()
    at /usr/src/debug/qt6-webengine/qtwebengine-everywhere-src-6.5.2/src/core/download_manager_delegate_qt.cpp:161
#23 0x00007fcf4f9fe40b in content::DownloadManagerImpl::DetermineDownloadTarget(download::DownloadItemImpl*, base::OnceCallback<void (base::FilePath const&, download::DownloadItem::TargetDisposition, download::DownloadDangerType, download::DownloadItem::MixedContentStatus, base::FilePath const&, base::FilePath const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, download::DownloadInterruptReason)>) ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/content/browser/download/download_manager_impl.cc:496
#24 0x00007fcf4f602c3f in download::DownloadItemImpl::DetermineDownloadTarget() ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/components/download/internal/common/download_item_impl.cc:1699
#25 0x00007fcf4f60fb71 in base::RepeatingCallback<void (download::DownloadInterruptReason, long)>::Run(download::DownloadInterruptReason, long) && ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/callback.h:278
#26 download::DownloadJob::OnDownloadFileInitialized(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long) ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/components/download/internal/common/download_job.cc:75
#27 0x00007fcf4f60ffde in base::internal::FunctorTraits<void (download::DownloadJob::*)(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long), void>::Invoke<void (download::DownloadJob::*)(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long), base::WeakPtr<download::DownloadJob> const&, base::RepeatingCallback<void (download::DownloadInterruptReason, long)> const&, download::DownloadInterruptReason, long>(void (download::DownloadJob::*)(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long), base::WeakPtr<download::DownloadJob> const&, base::RepeatingCallback<void (download::DownloadInterruptReason, long)> const&, download::DownloadInterruptReason&&, long&&) ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/bind_internal.h:647
#28 base::internal::InvokeHelper<true, void, 0ul, 1ul>::MakeItSo<void (download::DownloadJob::* const&)(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long), std::tuple<base::WeakPtr<download::DownloadJob>, base::RepeatingCallback<void (download::DownloadInterruptReason, long)> > const&, download::DownloadInterruptReason, long>(void (download::DownloadJob::* const&)(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long), std::tuple<base::WeakPtr<download::DownloadJob>, base::RepeatingCallback<void (download::DownloadInterruptReason, long)> > const&, download::DownloadInterruptReason&&, long&&) () at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/bind_internal.h:848
#29 base::internal::Invoker<base::internal::BindState<void (download::DownloadJob::*)(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long), base::WeakPtr<download::DownloadJob>, base::RepeatingCallback<void (download::DownloadInterruptReason, long)> >, void (download::DownloadInterruptReason, long)>::RunImpl<void (download::DownloadJob::* const&)(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long), std::tuple<base::WeakPtr<download::DownloadJob>, base::RepeatingCallback<void (download::DownloadInterruptReason, long)> > const&, 0ul, 1ul>(void (download::DownloadJob::* const&)(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long), std::tuple<base::WeakPtr<download::DownloadJob>, base::RepeatingCallback<void (download::DownloadInterruptReason, long)> > const&, std::integer_sequence<unsigned long, 0ul, 1ul>, download::DownloadInterruptReason&&, long&&) () at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/bind_internal.h:920
#30 base::internal::Invoker<base::internal::BindState<void (download::DownloadJob::*)(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long), base::WeakPtr<download::DownloadJob>, base::RepeatingCallback<void (download::DownloadInterruptReason, long)> >, void (download::DownloadInterruptReason, long)>::Run(base::internal::BindStateBase*, download::DownloadInterruptReason, long) ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/bind_internal.h:884
#31 0x00007fcf4f5fb9f5 in base::RepeatingCallback<void (download::DownloadInterruptReason, long)>::Run(download::DownloadInterruptReason, long) && ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/callback.h:278
#32 base::internal::FunctorTraits<base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, void>::Invoke<base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long>(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>&&, download::DownloadInterruptReason&&, long&&) () at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/bind_internal.h:767
#33 base::internal::InvokeHelper<false, void, 0ul, 1ul>::MakeItSo<base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, std::tuple<download::DownloadInterruptReason, long>>(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>&&, std::tuple<download::DownloadInterruptReason, long>&&) ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/bind_internal.h:826
#34 base::internal::Invoker<base::internal::BindState<base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long>, void ()>::RunImpl<base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, std::tuple<download::DownloadInterruptReason, long>, 0ul, 1ul>(base::RepeatingCallback<void (download::DownloadInterruptReason, long)>&&, std::tuple<download::DownloadInterruptReason, long>&&, std::integer_sequence<unsigned long, 0ul, 1ul>) ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/bind_internal.h:920
#35 base::internal::Invoker<base::internal::BindState<base::RepeatingCallback<void (download::DownloadInterruptReason, long)>, download::DownloadInterruptReason, long>, void ()>::RunOnce(base::internal::BindStateBase*) () at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/bind_internal.h:871
#36 0x00007fcf50de236d in base::OnceCallback<void ()>::Run() && ()
    at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/functional/callback.h:145
#37 base::TaskAnnotator::RunTaskImpl(base::PendingTask&) ()
    at ./../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/task/common/task_annotator.cc:134
#38 0x00007fcf50dfb707 in RunTask<base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::LazyNow*)::<lambda(perfetto::EventContext&)> >
    () at ../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/task/common/task_annotator.h:72
#39 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::LazyNow*) ()
    at ./../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:441
#40 0x00007fcf50dfc0d6 in base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork() ()
    at ./../../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/chromium/base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:297
#41 0x00007fcf4d6f9cb2 in QtWebEngineCore::MessagePumpForUIQt::handleScheduledWork() ()
    at /usr/src/debug/qt6-webengine/qtwebengine-everywhere-src-6.5.2/src/core/browser_main_parts_qt.cpp:196
#42 0x00007fcf5c97d0b6 in QObject::event(QEvent*) (this=0x558dfbad5370, e=0x7fcef845a460)
    at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.5.2/src/corelib/kernel/qobject.cpp:1368
#43 0x00007fcf5897136b in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x0, receiver=receiver@entry=0x558dfbad5370, e=e@entry=0x7fcef845a460)
    at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.5.2/src/widgets/kernel/qapplication.cpp:3287
        consumed = false
        filtered = false
#44 0x00007fcf58973139 in QApplication::notify(QObject*, QEvent*) (this=this@entry=0x558df9b8b4e0, receiver=receiver@entry=0x558dfbad5370, e=e@entry=0x7fcef845a460)
    at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.5.2/src/widgets/kernel/qapplication.cpp:3049
        extra = <optimized out>
        isProxyWidget = <optimized out>
        w = <optimized out>
        isWindowType = <optimized out>
        isWidgetType = <optimized out>
        res = false
#45 0x00007fcf5935e9c7 in sipQApplication::notify(QObject*, QEvent*) (this=0x558df9b8b4e0, a0=0x558dfbad5370, a1=0x7fcef845a460)
    at /usr/src/debug/pyqt6/PyQt6-6.5.2/build/QtWidgets/sipQtWidgetsQApplication.cpp:243
        sipGILState = (PyGILState_UNLOCKED | unknown: 0x558c)
        sipMeth = <optimized out>
#46 0x00007fcf5c93b718 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x558dfbad5370, event=event@entry=0x7fcef845a460)
    at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.5.2/src/corelib/kernel/qcoreapplication.cpp:1118
        selfRequired = <optimized out>
        result = false
        cbdata = {0x558dfbad5370, 0x7fcef845a460, 0x7ffd9a68171f}
        d = <optimized out>
        threadData = 0x558df9720e00
        scopeLevelCounter = {threadData = 0x558df9720e00}
#47 0x00007fcf5c93ba9b in QCoreApplication::sendEvent(QObject*, QEvent*) (event=0x7fcef845a460, receiver=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.5.2/src/corelib/kernel/qcoreapplication.cpp:1536
        e = 0x7fcef845a460
        pe = <optimized out>
        r = <optimized out>
        event_deleter = {d = 0x7fcef845a460}
        locker = {_M_device = 0x558df9720e58, _M_owns = false}
        startOffset = 0
        i = @0x558df9720e48: 1
#48 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x558df9720e00)
    at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.5.2/src/corelib/kernel/qcoreapplication.cpp:1898
        e = 0x7fcef845a460
        pe = <optimized out>
        r = <optimized out>
        event_deleter = {d = 0x7fcef845a460}
        locker = {_M_device = 0x558df9720e58, _M_owns = false}
        startOffset = 0
        i = @0x558df9720e48: 1
#49 0x00007fcf5cb34854 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=0x0, event_type=0)
    at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.5.2/src/corelib/kernel/qcoreapplication.cpp:1757
        data = <optimized out>
        source = 0x558df9d9fea0
#50 postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x558df9d9fea0)
    at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.5.2/src/corelib/kernel/qeventdispatcher_glib.cpp:243
        source = 0x558df9d9fea0
#51 0x00007fcf5d4e5a31 in g_source_remove_by_user_data (user_data=0x7fcf3da48980 <sipTypeDef_QtWebEngineCore_QWebEngineDownloadRequest>) at ../glib/glib/gmain.c:2642
        source = <optimized out>
#52 0x0000000000000000 in  ()
(gdb)

@The-Compiler The-Compiler modified the milestones: v3.0.1, v3.0.2 Oct 18, 2023
@The-Compiler
Copy link
Member Author

Still happens on Qt 6.6.1, see 170173559677.8881.16610903218876743068@crashes.qutebrowser.org.

Probably gonna attempt an upstream report with "just" the stack trace, and add a workaround that avoids calling .origin() if possible.

@The-Compiler The-Compiler removed this from the v3.0.3 milestone Dec 5, 2023
@The-Compiler
Copy link
Member Author

Reported upstream: [QTBUG-119763] [REG 6.5.2?] Rare segfaults in QWebEngineDownloadItem::page() - Qt Bug Tracker

And with c698091, the problematic method now only gets called when doing a download from a file: or http: URL, which hopefully makes the crash much less likely to happen even without a fix from Qt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug: segfault/crash/hang There's a low-level crash in C++, or a hang/freeze. component: downloads Issues related to downloads. component: QtWebEngine Issues related to the QtWebEngine backend, based on Chromium. priority: 1 - middle Issues which should be done at some point, but aren't that important. qt Issues related to the Qt framework. qt: 6 Issues related to Qt 6.
Projects
None yet
Development

No branches or pull requests

3 participants