Skip to content

Recursed (game) crashes xfwm4

The video game Recursed reliably crashes xfwm4 on launch. When xfwm is restarted (by xfce4-session, i assume...?), I've run into two scenarios:

  • it keeps crashing over and over until it (xfce4-session?) gives up
  • it comes back fine, the game is unfocused, but focusing the game or opening the alt-tab window switcher crashes xfwm4 again
Full xfwm4 output
(xfwm4:1200353): Gdk-ERROR **: 19:19:33.738: The program 'xfwm4' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadDrawable (invalid Pixmap or Window parameter)'.
  (Details: serial 762248 error_code 9 request_code 14 (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.)
fish: Job 1, 'xfwm4' terminated by signal SIGTRAP (Trace or breakpoint trap)

It was fine last I played it, a couple of years ago, and as far as I know the game hasn't had any updates since apart from being routinely rebuilt for new versions of glibc.

One thing I noticed is that when it isn't crashing, the window has no icon, and I remember it having an icon before. Coupled with alt-tab triggering a crash (as the icon is displayed in the alt-tab window), it makes me think the icon might have something to do with it. I've attached xprop output below, which mentions a bitmap for an icon but doesn't try to display one..? I don't know how normal or abnormal that is.

xprop output
_NET_WM_ICON_GEOMETRY(CARDINAL) = 498, 0, 97, 26
_NET_FRAME_EXTENTS(CARDINAL) = 5, 5, 29, 5
_NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_CLOSE, _NET_WM_ACTION_ABOVE, _NET_WM_ACTION_BELOW, _NET_WM_ACTION_FULLSCREEN, _NET_WM_ACTION_MOVE, _NET_WM_ACTION_RESIZE, _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_MAXIMIZE_VERT, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_STICK
WM_STATE(WM_STATE):
		window state: Normal
		icon window: 0x1324e100
_NET_WM_DESKTOP(CARDINAL) = 0
_NET_WM_STATE(ATOM) = 
_NET_WM_ICON_NAME(UTF8_STRING) = "Recursed"
_NET_WM_NAME(UTF8_STRING) = "Recursed"
WM_ICON_NAME(UTF8_STRING) = "Recursed"
WM_NAME(UTF8_STRING) = "Recursed"
WM_CLASS(STRING) = "recursed.x64", "Recursed"
WM_NORMAL_HINTS(WM_SIZE_HINTS):
_MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 0x3, 0x3e, 0x7e, 0x0, 0x0
WM_HINTS(WM_HINTS):
		bitmap id # to use for icon: 0x940000c
		bitmap id # of mask for icon: 0x940000e
WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW, _NET_WM_PING
_NET_WM_PID(CARDINAL) = 1200197
STEAM_GAME(CARDINAL) = 497780