I'm using gnuplot 5.2 patchlevel 3 on openSUSE tumbleweed. Since a few weeks, I'm not able to use the qt terminal over ssh with X forward anymore.
The graphic terminal just hangs there and ans keep showing whatever was behind the window when it started. Trying to close it with the window manager control, or even quitting gnuplot, has no effect (it can be killed with CTRL-ALT-ESC+click)
On the other hand, gnuplot_qt works correctly on a local session and gnuplot_x11 works correctly also via ssh.
No error message is displayed in gnuplot. If I connect to the running QT window with gdb I get the following backtrace. I installeda few of the missing debuginfo packages, but let me know if you need more details in the backtrace I can install the other ones.
[1|10:07|naquite|~]$ /bin/ps uxf|grep gnuplot paulatto 16300 0.3 0.0 284104 31092 pts/12 S+ 10:07 0:00 | \_ gnuplot paulatto 16314 0.0 0.0 8728 936 pts/13 S+ 10:07 0:00 \_ grep --color=auto gnuplot paulatto 16302 4.0 0.2 1162184 71296 ? Sl 10:07 0:00 /usr/lib/gnuplot/5.2/gnuplot_qt [0|10:07|naquite|~]$ gdb /usr/lib/gnuplot/5.2/gnuplot_qt 16302 GNU gdb (GDB; openSUSE Tumbleweed) 8.1 <<< snip >>> Reading symbols from /usr/lib/gnuplot/5.2/gnuplot_qt...Reading symbols from /usr/lib/debug/usr/lib/gnuplot/5.2/gnuplot_qt-5.2.3-1.2.x86_64.debug...done. done. Attaching to program: /usr/lib/gnuplot/5.2/gnuplot_qt, process 16302 [New LWP 16303] [New LWP 16304] [New LWP 16305] [New LWP 16306] [New LWP 16307] [New LWP 16308] [New LWP 16309] [New LWP 16310] [New LWP 16311] [New LWP 16312] Missing separate debuginfo for /lib64/libm.so.6 Try: zypper install -C "debuginfo(build-id)=986a92526a109cf87c77d35673aa62d63bc37fad" <<< snip - many more of these, but they do not appear in backtrace >>> Try: zypper install -C "debuginfo(build-id)=7ce7140d5219c7978d116505e6e756efcdfb2515" 0x00007f6514d7e5d9 in poll () from /lib64/libc.so.6 (gdb) bt #0 0x00007f6514d7e5d9 in poll () from /lib64/libc.so.6 #1 0x00007f650fd95377 in poll (__timeout=-1, __nfds=1, __fds=0x7fff2ef2f0b8) at /usr/include/bits/poll2.h:46 #2 _xcb_conn_wait () at xcb_conn.c:479 #3 0x00007f650fd96caf in wait_for_reply (c=c@entry=0x187ab30, request=497, e=e@entry=0x0) at xcb_in.c:516 #4 0x00007f650fd96dc2 in xcb_wait_for_reply (c=0x187ab30, request=497, e=0x0) at xcb_in.c:532 #5 0x00007f650dc8e201 in QXcbBackingStoreImage::createShmSegment(unsigned long) () at qxcbconnection.h:409 #6 0x00007f650dc8ecb6 in QXcbBackingStoreImage::create (this=0x1b82f10, size=..., fmt=0x187fe44, format=QImage::Format_ARGB32_Premultiplied) at qxcbbackingstore.cpp:228 #7 0x00007f650dc906cb in QXcbBackingStore::resize (this=0x1b05d50, size=...) at qxcbbackingstore.cpp:862 #8 0x00007f65163152e6 in QBackingStore::resize (this=<optimized out>, size=...) at ../../include/QtCore/../../src/corelib/tools/qsize.h:119 #9 0x00007f651697285f in QWidgetBackingStore::doSync() () at ../../include/QtCore/../../src/corelib/tools/qsize.h:119 #10 0x00007f6516973eaa in QWidgetBackingStore::sync (this=0x1c1b0e0, exposedWidget=0x1949a70, exposedRegion=...) at kernel/qwidgetbackingstore.cpp:1130 #11 0x00007f65169bc4ec in QWidgetWindow::handleExposeEvent(QExposeEvent*) () at ../../include/QtGui/../../src/gui/kernel/qevent.h:437 #12 0x00007f65169bce2b in QWidgetWindow::event (this=0x1bfd040, event=0x7fff2ef2f9b0) at kernel/qwidgetwindow.cpp:325 #13 0x00007f6516964b01 in QApplicationPrivate::notify_helper (this=this@entry=0x1857cb0, receiver=receiver@entry=0x1bfd040, e=e@entry=0x7fff2ef2f9b0) at kernel/qapplication.cpp:3714 #14 0x00007f651696bcea in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3473 #15 0x00007f6515be7be9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at ../../include/QtCore/../../src/corelib/kernel/qobject.h:142 #16 0x00007f651619e5ab in QCoreApplication::sendSpontaneousEvent (event=0x7fff2ef2f9b0, receiver=0x1bfd040) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:237 #17 QGuiApplicationPrivate::processExposeEvent (e=0x1ca25b0) at kernel/qguiapplication.cpp:3034 #18 0x00007f651619f1ad in QGuiApplicationPrivate::processWindowSystemEvent (e=e@entry=0x1ca25b0) at kernel/qguiapplication.cpp:1870 #19 0x00007f651617883b in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:1028 #20 0x00007f650dcfa4fb in QPAEventDispatcherGlib::processEvents (this=0x18de370, flags=...) at qeventdispatcher_glib.cpp:70 #21 0x00007f6515be69fb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at ../../include/QtCore/../../src/corelib/global/qflags.h:140 #22 0x00007f6515bee78e in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:120 #23 0x000000000040fed1 in main () at qtterminal/gnuplot_qt.cpp:100 #24 0x00007f6514cb111b in __libc_start_main () from /lib64/libc.so.6 #25 0x000000000041000a in _start () at ../sysdeps/x86_64/start.S:120 (gdb)
I've attached a text file with the output of "ldd /usr/lib/gnuplot/5.2/gnuplot_qt" and the version information of all the libraries linked
Diff:
I've noticed that the problem is not gnuplot-specific but affects all Qt-based applications