在某些窗口管理器上关闭Qt5应用程序时出现段错误

时间:2018-12-31 12:10:40

标签: qt5 pyqt5

我正在运行Fedora 29(GNOME 3.30)。当我使用窗口栏的X按钮关闭Frescobaldi(从存储库安装的python3 / Qt5应用程序)时,出现段错误。如果我使用Ctrl + Q或File> Quit退出Frescobaldi,则不会发生这种情况。

这已经发生了好几周了,可能是在Qt5升级之后。 我首先是reported it to Frescobaldi issue tracker

我测试了不同的设置,似乎segfault取决于窗口管理器:当我使用mutter或gnome-shell时,我得到了segfault;使用metacity时,不会出现任何段错误。

这是回溯:

(gdb) run frescobaldi
Starting program: /usr/bin/python3 frescobaldi
Missing separate debuginfos, use: dnf debuginfo-install glibc-2.28-26.fc29.x86_64
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
/usr/bin/python3: can't open file 'frescobaldi': [Errno 2] No such file or directory
[Inferior 1 (process 4084) exited with code 02]
(gdb) run /usr/bin/frescobaldi
Starting program: /usr/bin/python3 /usr/bin/frescobaldi
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
[New Thread 0x7fffeb82b700 (LWP 4101)]
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
[New Thread 0x7fffe9fd6700 (LWP 4102)]
[New Thread 0x7fffe97d5700 (LWP 4103)]
[New Thread 0x7fffe8f84700 (LWP 4104)]
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
[New Thread 0x7fffdbfff700 (LWP 4105)]
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
[New Thread 0x7fffdac8e700 (LWP 4107)]
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
[New Thread 0x7fffd893d700 (LWP 4111)]
[Thread 0x7fffd893d700 (LWP 4111) exited]

Thread 1 "python3" received signal SIGSEGV, Segmentation fault.
0x00007fffed59d8a5 in QWindow::destroy() () from /lib64/libQt5Gui.so.5
Missing separate debuginfos, use: dnf debuginfo-install GConf2-3.2.6-21.fc29.x86_64 PackageKit-gtk3-module-1.1.12-2.fc29.x86_64 alsa-lib-1.1.7-2.fc29.x86_64 at-spi2-atk-2.30.0-1.fc29.x86_64 at-spi2-core-2.30.0-2.fc29.x86_64 atk-2.30.0-1.fc29.x86_64 bzip2-libs-1.0.6-28.fc29.x86_64 cairo-1.16.0-3.fc29.x86_64 cairo-gobject-1.16.0-3.fc29.x86_64 dbus-libs-1.12.10-1.fc29.x86_64 dconf-0.30.1-1.fc29.x86_64 expat-2.2.6-1.fc29.x86_64 fontconfig-2.13.1-3.fc29.x86_64 freetype-2.9.1-6.fc29.x86_64 fribidi-1.0.5-1.fc29.x86_64 gdk-pixbuf2-2.38.0-4.fc29.x86_64 glib2-2.58.2-1.fc29.x86_64 graphite2-1.3.10-6.fc29.x86_64 gtk3-3.24.1-1.fc29.x86_64 gvfs-client-1.38.1-1.fc29.x86_64 harfbuzz-1.8.7-1.fc29.x86_64 jbigkit-libs-2.1-15.fc29.x86_64 libICE-1.0.9-14.fc29.x86_64 libSM-1.2.3-1.fc29.x86_64 libX11-1.6.7-1.fc29.x86_64 libX11-xcb-1.6.7-1.fc29.x86_64 libXau-1.0.8-14.fc29.x86_64 libXcomposite-0.4.4-15.fc29.x86_64 libXcursor-1.1.15-4.fc29.x86_64 libXdamage-1.1.4-15.fc29.x86_64 libXext-1.3.3-10.fc29.x86_64 libXfixes-5.0.3-8.fc29.x86_64 libXinerama-1.1.4-2.fc29.x86_64 libXrandr-1.5.1-8.fc29.x86_64 libXrender-0.9.10-8.fc29.x86_64 libXxf86vm-1.1.4-10.fc29.x86_64 libblkid-2.32.1-1.fc29.x86_64 libcanberra-0.30-17.fc29.x86_64 libcanberra-gtk3-0.30-17.fc29.x86_64 libcap-2.25-12.fc29.x86_64 libdatrie-0.2.9-8.fc29.x86_64 libdrm-2.4.96-2.fc29.x86_64 libepoxy-1.5.3-1.fc29.x86_64 libffi-3.1-18.fc29.x86_64 libgcc-8.2.1-6.fc29.x86_64 libgcrypt-1.8.4-1.fc29.x86_64 libglvnd-1.1.0-2.fc29.x86_64 libglvnd-glx-1.1.0-2.fc29.x86_64 libgpg-error-1.31-2.fc29.x86_64 libicu-62.1-3.fc29.x86_64 libjpeg-turbo-2.0.0-1.fc29.x86_64 libmount-2.32.1-1.fc29.x86_64 libogg-1.3.3-1.fc29.x86_64 libpng-1.6.34-6.fc29.x86_64 libselinux-2.8-4.fc29.x86_64 libstdc++-8.2.1-6.fc29.x86_64 libthai-0.1.28-1.fc29.x86_64 libtiff-4.0.10-1.fc29.x86_64 libuuid-2.32.1-1.fc29.x86_64 libvorbis-1.3.6-3.fc29.x86_64 libwayland-client-1.16.0-1.fc29.x86_64 libwayland-cursor-1.16.0-1.fc29.x86_64 libwayland-egl-1.16.0-1.fc29.x86_64 libxcb-1.13.1-1.fc29.x86_64 libxkbcommon-x11-0.8.2-1.fc29.x86_64 lz4-libs-1.8.2-2.fc29.x86_64 nspr-4.20.0-1.fc29.x86_64 openssl-libs-1.1.1-3.fc29.x86_64 pango-1.42.4-1.fc29.x86_64 pcre-8.42-5.fc29.x86_64 pcre2-utf16-10.32-4.fc29.x86_64 python3-qt5-base-5.11.2-4.fc29.x86_64 python3-sip-4.19.12-9.fc29.x86_64 qt5-qtbase-5.11.1-9.fc29.x86_64 systemd-libs-239-7.git3bf819c.fc29.x86_64 xcb-util-0.4.0-11.fc29.x86_64 xcb-util-renderutil-0.3.9-12.fc29.x86_64 xcb-util-wm-0.4.1-14.fc29.x86_64 xz-libs-5.2.4-3.fc29.x86_64 zlib-1.2.11-14.fc29.x86_64
(gdb) bt
#0  0x00007fffed59d8a5 in QWindow::destroy() () at /lib64/libQt5Gui.so.5
#1  0x00007fffed59e47f in QWindow::event(QEvent*) () at /lib64/libQt5Gui.so.5
#2  0x00007fffec4f7d78 in  () at /lib64/libQt5Widgets.so.5
#3  0x00007fffec49b2a5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#4  0x00007fffec4a29c0 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#5  0x00007fffecb1f23e in  () at /usr/lib64/python3.7/site-packages/PyQt5/QtWidgets.so
#6  0x00007ffff03cc236 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#7  0x00007fffed58f38a in QGuiApplicationPrivate::processCloseEvent(QWindowSystemInterfacePrivate::CloseEvent*) () at /lib64/libQt5Gui.so.5
#8  0x00007fffed594335 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /lib64/libQt5Gui.so.5
#9  0x00007fffed56f71b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Gui.so.5
#10 0x00007fffebb4ff1f in  () at /lib64/libQt5XcbQpa.so.5
#11 0x00007ffff03cb17b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#12 0x00007ffff03d3246 in QCoreApplication::exec() () at /lib64/libQt5Core.so.5
#13 0x00007fffecb1dc7f in  () at /usr/lib64/python3.7/site-packages/PyQt5/QtWidgets.so
#14 0x00007ffff7d6ff17 in _PyMethodDef_RawFastCallKeywords (method=0x7fffece87d40, self=<QApplication at remote 0x7ffff0c1f1f8>, args=0x7fffd9124b88, nargs=<optimized out>, kwnames=<optimized out>)
    at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Objects/call.c:694
#15 0x00007ffff7d701b0 in _PyCFunction_FastCallKeywords (func=<built-in method exec_ of QApplication object at remote 0x7ffff0c1f1f8>, args=<optimized out>, nargs=<optimized out>, kwnames=<optimized out>)
    at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Objects/call.c:730
#16 0x00007ffff7de7acc in call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/ceval.c:4554
#17 0x00007ffff7de7acc in _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/ceval.c:3093
#18 0x00007ffff7d6f78a in function_code_fastcall (globals=<optimized out>, nargs=0, args=<optimized out>, co=<optimized out>) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Objects/call.c:408
#19 0x00007ffff7d6f78a in _PyFunction_FastCallKeywords (func=<optimized out>, stack=0x7ffff0d7ab80, nargs=0, kwnames=<optimized out>) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Objects/call.c:408
#20 0x00007ffff7de7436 in call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/ceval.c:4602
#21 0x00007ffff7de7436 in _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/ceval.c:3093
#22 0x00007ffff7d278e6 in _PyEval_EvalCodeWithName
    (_co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=<optimized out>, kwnames=0x0, kwargs=0x0, kwcount=<optimized out>, kwstep=2, defs=0x0, defcount=0, kwdefs=0x0, closure=0x0, name=0x0, qualname=0x0) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/ceval.c:3930
#23 0x00007ffff7d28983 in PyEval_EvalCodeEx
    (_co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=<optimized out>, kws=<optimized out>, kwcount=0, defs=0x0, defcount=0, kwdefs=0x0, closure=0x0)
    at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/ceval.c:3959
#24 0x00007ffff7d289ab in PyEval_EvalCode
    (co=co@entry=<code at remote 0x7ffff0d185d0>, globals=globals@entry={'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <SourceFileLoader(name='__main__', path='/usr/bin/frescobaldi') at remote 0x7ffff0d0ee10>, '__spec__': None, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff0dd2c28>, '__file__': '/usr/bin/frescobaldi', '__cached__': None, 'sys': <module at remote 0x7ffff0dccf98>, 'toplevel': <module at remote 0x7ffff0bb6228>, 'main': <module at remote 0x7ffff0bb62c8>, 'app': <module at remote 0x7fffec2ae048>}, locals=locals@entry={'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <SourceFileLoader(name='__main__', path='/usr/bin/frescobaldi') at remote 0x7ffff0d0ee10>, '__spec__': None, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff0dd2c28>, '__file__': '/usr/bin/frescobaldi', '__cached__': None, 'sys': <module at remote 0x7ffff0dccf98>, 'toplevel': <module at remote 0x7ffff0bb6228>, 'main': <module at remote 0x7ffff0bb62c8>, 'app': <module at remote 0x7fffec2ae048>}) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/ceval.c:524
#25 0x00007ffff7e5720e in run_mod
    (mod=mod@entry=0x5555555ddad0, filename=filename@entry='/usr/bin/frescobaldi', globals=globals@entry={'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <SourceFileLoader(name='__main__', path='/usr/bin/frescobaldi') at remote 0x7ffff0d0ee10>, '__spec__': None, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff0dd2c28>, '__file__': '/usr/bin/frescobaldi', '__cached__': None, 'sys': <module at remote 0x7ffff0dccf98>, 'toplevel': <module at remote 0x7ffff0bb6228>, 'main': <module at remote 0x7ffff0bb62c8>, 'app': <module at remote 0x7fffec2ae048>}, locals=locals@entry={'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <SourceFileLoader(name='__main__', path='/usr/bin/frescobaldi') at remote 0x7ffff0d0ee10>, '__spec__': None, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff0dd2c28>, '__file__': '/usr/bin/frescobaldi', '__cached__': None, 'sys': <module at remote 0x7ffff0dccf98>, 'toplevel': <module at remote 0x7ffff0bb6228>, 'main': <module at remote 0x7ffff0bb62c8>, 'app': <module at remote 0x7fffec2ae048>}, flags=flags@entry=0x7fffffffd240, arena=arena@entry=0x7ffff0dda0a8) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/pythonrun.c:1035
#26 0x00007ffff7e59086 in PyRun_FileExFlags
    (fp=0x5555555a3210, filename_str=<optimized out>, start=<optimized out>, globals={'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <SourceFileLoader(name='__main__', path='/usr/bin/frescobaldi') at remote 0x7ffff0d0ee10>, '__spec__': None, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff0dd2c28>, '__file__': '/usr/bin/frescobaldi', '__cached__': None, 'sys': <module at remote 0x7ffff0dccf98>, 'toplevel': <module at remote 0x7ffff0bb6228>, 'main': <module at remote 0x7ffff0bb62c8>, 'app': <module at remote 0x7fffec2ae048>}, locals={'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <SourceFileLoader(name='__main__', path='/usr/bin/frescobaldi') at remote 0x7ffff0d0ee10>, '__spec__': None, '__annotations__': {}, '__builtins__': <module at remote 0x7ffff0dd2c28>, '__file__': '/usr/bin/frescobaldi', '__cached__': None, 'sys': <module at remote 0x7ffff0dccf98>, 'toplevel': <module at remote 0x7ffff0bb6228>, 'main': <module at remote 0x7ffff0bb62c8>, 'app': <module at remote 0x7fffec2ae048>}, closeit=1, flags=0x7fffffffd240) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/pythonrun.c:988
#27 0x00007ffff7e5a648 in PyRun_SimpleFileExFlags (fp=0x5555555a3210, filename=<optimized out>, closeit=1, flags=0x7fffffffd240) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Python/pythonrun.c:429
#28 0x00007ffff7e5c801 in pymain_run_file (p_cf=0x7fffffffd240, filename=0x55555555ad80 L"/usr/bin/frescobaldi", fp=0x5555555a3210) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Modules/main.c:427
--Type <RET> for more, q to quit, c to continue without paging--
#29 0x00007ffff7e5c801 in pymain_run_filename (cf=0x7fffffffd240, pymain=0x7fffffffd350) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Modules/main.c:1537
#30 0x00007ffff7e5c801 in pymain_run_python (pymain=0x7fffffffd350) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Modules/main.c:2626
#31 0x00007ffff7e5c801 in pymain_main (pymain=0x7fffffffd350, pymain=<optimized out>) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Modules/main.c:2787
#32 0x00007ffff7e5cbdc in _Py_UnixMain (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/python3-3.7.1-4.fc29.x86_64/Modules/main.c:2822
#33 0x00007ffff78ca413 in __libc_start_main () at /lib64/libc.so.6
#34 0x000055555555508e in _start ()

0 个答案:

没有答案