This is from https://bugzilla.redhat.com/show_bug.cgi?id=1672117 gkrellm has the old-school pseudo-transparency mode where it can read the root background and display it as part of its background. It does this by reading the pixmap in _XSETROOT_ID. For some reason, recent xfwm4 sets a bad pixmap for _XSETROOT_ID, which crashes gkrellm. I believe this happened as part of the work on https://bugzilla.xfce.org/show_bug.cgi?id=15709. Here is what you get from gkrellm when it tries to read the background: (gkrellm:3773): Gdk-ERROR **: 19:08:34.988: The program 'gkrellm' received an X Window System error. This probably reflects a bug in the program. The error was 'BadPixmap (invalid Pixmap parameter)'. (Details: serial 2494 error_code 4 request_code 56 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 --sync command line option to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.) Trace/breakpoint trap (core dumped) I think maybe it is as simple as setting _XSETROOT_ID to 0x0, which is what happens after I run fvwm-root. I don't really know all the semantics. https://metacpan.org/pod/X11::Protocol::XSetRoot seemed to be a useful document.
xfwm4 does not set neither _XSETROOT_ID nor _XROOTPMAP_ID properties, it only *reads* those (to match the wallpaper at compositor startup), so xfwm4 simply cannot be the problem here. The one who does is xfdesktop... reassigning. (PS: alsom, please note that's clearly a bug in gkrellm primarily as it should be more cautious when using random properties set by external programs, just saying...)
FWIW, xfdesktop sets the _XROOTPMAP_ID to the XID of the root window: https://git.xfce.org/xfce/xfdesktop/tree/src/xfce-desktop.c#n323 That doesn't look correct to me, it should set a pixmap XID, not the XID of the root window... That would explain why applications get an XError when trying to use that XID as pixmap.
-- GitLab Migration Automatic Message -- This bug has been migrated to xfce.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.xfce.org/xfce/xfdesktop/-/issues/62. Please create an account or use an existing account on one of our supported OAuth providers. If you want to fork to submit patches and merge requests please continue reading here: https://docs.xfce.org/contribute/dev/git/start#gitlab_forks_and_merge_requests Also feel free to reach out to us on the mailing list https://mail.xfce.org/mailman/listinfo/xfce4-dev