[Gambas-user] [CRASH REPORT] WinPin

T Lee Davidson t.lee.davidson at gmail.com
Sun Oct 8 21:25:06 CEST 2023


On 10/8/23 14:10, Martin Fischer wrote:
>>
>> Your project uses the gb.gui component. So, when running on Cinnamon
>> desktop as you are, it would use GTK. And, when running on the KDE
>> desktop as I do, it would use Qt.
>>
>> As a test, I switched to using the gb.gtk3 component in the project
>> instead of gb.gui. After launching Lazarus in multi-window mode, I could
>> no longer bring up the WinPin UI by clicking on the sys-tray icon. And,
>> upon closing Lazarus, I got the same error as you (with the exception of
>> "serial 2601"):
>> ~~~
>> (WinPin:11659): Gdk-ERROR **: 12:06:09.436: The program 'WinPin'
>> received an X Window System error.
>> This probably reflects a bug in the program.
>> The error was 'BadWindow (invalid Window parameter)'.
>>    (Details: serial 2601 error_code 3 request_code 20 (core protocol)
>> minor_code 0)
>>    (Note to programmers: normally, X errors are reported asynchronously;
>>     that is, you will receive the error a while after causing it.
>>     To debug your program, run it with the GDK_SYNCHRONIZE environment
>>     variable to change this behavior. You can then get a meaningful
>>     backtrace from your debugger if you break on the gdk_x_error()
>> function.)
>> ~~~
>>
>> So, it's a GTK issue, or an issue with the Gambas GTK interface.
>>
> 
> I checked using gb.gui.qt and it worked without crash. Great.
> 
> But then I turned jit-compilation on again (which I disabled for testing).
> Bang! I got a segmentation fault.
> 
> So: yes, qt helps, but I think there is still something fishy here...
> 
> I attached the project with qt and jit enabled.
> Note that for me it's the 'Fast' on WindowList::Merge() that triggers
> the segfault. Remove that Fast and no crash happens.
> 
> ?Puzzled?
> Martin

I don't know if this is good news or bad news, Martin, but I get no crash even with Fast on WindowList::Merge().

I tried it running both from the IDE and with a compiled executable on the command line. I can pin and unpin Lazarus windows. 
The only output I get on the command line is a *bunch* of "gb.qt5: warning: unhandled xcb event".


-- 
Lee

[System]
Gambas=3.18.4 07c51f51 (stable)
OperatingSystem=Linux
Distribution=openSUSE Leap 15.5
Kernel=5.14.21-150500.55.28-default
Architecture=x86_64
Cores=6
Memory=15981M
Language=en_US.UTF-8
Desktop=KDE
DesktopResolution=96
DesktopScale=7
WidgetTheme=breeze
Font=Noto Sans,10

[Programs]
clang=clang version 15.0.7
gcc=gcc (SUSE Linux) 7.5.0
git=git version 2.35.3
pngquant=2.11.2 (November 2017)
trans=Translate Shell       0.9.7

[Libraries]
Cairo=/usr/lib64/libcairo.so.2.11600.0
Curl=/usr/lib64/libcurl.so.4.8.0
DBus=/usr/lib64/libdbus-1.so.3.19.4
GDK2=/usr/lib64/libgdk-x11-2.0.so.0.2400.33
GDK3=/usr/lib64/libgdk-3.so.0.2404.30
GStreamer=/usr/lib64/libgstreamer-1.0.so.0.2200.0
GTK+2=/usr/lib64/libgtk-x11-2.0.so.0.2400.33
GTK+3=/usr/lib64/libgtk-3.so.0.2404.30
OpenGL=/usr/lib64/libGL.so.1.7.0
Poppler=/usr/lib64/libpoppler.so.117.0.0
Poppler=/usr/lib64/libpoppler.so.126.0.0
Poppler=/usr/lib64/libpoppler.so.89.0.0
QT5=/usr/lib64/libQt5Core.so.5.15.8
RSvg=/usr/lib64/librsvg-2.so.2.48.0
SDL=/usr/lib64/libSDL2-2.0.so.0.8.0
SQLite 3=/usr/lib64/libsqlite3.so.0.8.6

[Environment]
AUDIODRIVER=pulseaudio
COLORTERM=1
CONFIG_SITE=/usr/share/site/x86_64-unknown-linux-gnu
CPU=x86_64
CSHEDIT=emacs
CVS_RSH=ssh
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/<user>/1000/bus
DESKTOP_SESSION=/usr/share/xsessions/plasma5
DISPLAY=:0
FROM_HEADER=
GB_GUI=gb.qt5
GPG_TTY=not a tty
GTK2_RC_FILES=/etc/gtk-2.0/gtkrc:<home>/.gtkrc-2.0:<home>/.config/gtkrc-2.0
GTK_IM_MODULE=cedilla
GTK_MODULES=canberra-gtk-module
GTK_RC_FILES=/etc/gtk/gtkrc:<home>/.gtkrc:<home>/.config/gtkrc
GUESTFISH_INIT=\e[1;34m
GUESTFISH_OUTPUT=\e[0m
GUESTFISH_PS1=\[\e[1;32m\]><fs>\[\e[0;31m\]
GUESTFISH_RESTORE=\e[0m
G_BROKEN_FILENAMES=1
G_FILENAME_ENCODING=@locale,UTF-8,ISO-8859-15,CP1252
HISTSIZE=1000
HOME=<home>
HOST=<hostname>
HOSTNAME=<hostname>
HOSTTYPE=x86_64
INVOCATION_ID=26a6d1aca20b477cb172a38162f60b91
JAVA_BINDIR=/usr/lib64/jvm/java/bin
JAVA_HOME=/usr/lib64/jvm/java
JAVA_ROOT=/usr/lib64/jvm/java
JDK_HOME=/usr/lib64/jvm/java
JOURNAL_STREAM=8:41840
JRE_HOME=/usr/lib64/jvm/java
KDE_APPLICATIONS_AS_SCOPE=1
KDE_FULL_SESSION=true
KDE_SESSION_UID=1000
KDE_SESSION_VERSION=5
LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8
LESS=-M -I -R
LESSCLOSE=lessclose.sh %s %s
LESSKEY=/etc/lesskey.bin
LESSOPEN=lessopen.sh %s
LESS_ADVANCED_PREPROCESSOR=no
LOGNAME=<user>
MACHTYPE=x86_64-suse-linux
MAIL=/var/spool/mail/<user>
MANAGERPID=6175
MANPATH=<home>/.local/share/man:/usr/local/man:/usr/local/share/man:/usr/share/man
MINICOM=-c on
MORE=-sl
MOZ_GMP_PATH=/usr/lib64/mozilla/plugins/gmp-gmpopenh264/system-installed
OSTYPE=linux
PAGER=less
PAM_KWALLET5_LOGIN=/run/<user>/1000/kwallet5.socket
PATH=<home>/.local/bin:<home>/bin:/usr/local/bin:/usr/bin:/bin:<home>/opt/
PROFILEREAD=true
PWD=<home>
PYTHONSTARTUP=/etc/pythonstart
QEMU_AUDIO_DRV=pa
QT_AUTO_SCREEN_SCALE_FACTOR=0
QT_IM_MODULE=xim
QT_IM_SWITCHER=imsw-multi
QT_LOGGING_RULES=*.debug=false
SDK_HOME=/usr/lib64/jvm/java
SESSION_MANAGER=local/<hostname>:@/tmp/.ICE-unix/6309,unix/<hostname>:/tmp/.ICE-unix/6309
SHELL=/bin/bash
SSH_AGENT_PID=6242
SSH_ASKPASS=/usr/lib/ssh/ssh-askpass
SSH_AUTH_SOCK=/tmp/ssh-KyiWGgOihHL3/agent.6192
SYSTEMD_EXEC_PID=6396
TERM=xterm
TZ=:/etc/localtime
USER=<user>
WINDOWMANAGER=/usr/bin/startplasma-x11
XAUTHLOCALHOSTNAME=<hostname>
XAUTHORITY=/run/<user>/1000/xauth_Iffiad
XCURSOR_SIZE=24
XCURSOR_THEME=breeze_cursors
XDG_CONFIG_DIRS=<home>/.config/kdedefaults:/etc/xdg
XDG_CURRENT_DESKTOP=KDE
XDG_DATA_DIRS=<home>/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share
XDG_RUNTIME_DIR=/run/<user>/1000
XDG_SEAT=seat0
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
XDG_SESSION_CLASS=<user>
XDG_SESSION_DESKTOP=KDE
XDG_SESSION_ID=4
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session1
XDG_SESSION_TYPE=x11
XDG_VTNR=7
XKEYSYMDB=/usr/X11R6/lib/X11/XKeysymDB
XMODIFIERS=@im=local
XNLSPATH=/usr/share/X11/nls
XSESSION_IS_UP=yes
force_s3tc_enable=true



More information about the User mailing list