After digging a bit further, I found the following commit from xorg that definitively fixes the issue for me: https://gitlab.freedesktop.org/xorg/xserver/commit/ce393de0efb8626d15f3b97c97916971a6aefebd
I've attached a patch that replicates this fix for X.Org X Server 1.19.6. Please use this patch and disregard the easystroke.diff one that I sent earlier.
Fixing Easystroke crash --- a/hw/xfree86/drivers/modesetting/drmmode_display.c +++ b/hw/xfree86/drivers/modesetting/drmmode_display.c @@ -744,10 +744,13 @@ drmmode_ptr drmmode = drmmode_crtc->drmmode; uint32_t handle = drmmode_crtc->cursor_bo->handle; modesettingPtr ms = modesettingPTR(crtc->scrn); + CursorPtr cursor = xf86CurrentCursor(crtc->scrn->pScreen); int ret = -EINVAL; + if (cursor == NullCursor) + return TRUE; + if (!drmmode_crtc->set_cursor2_failed) { - CursorPtr cursor = xf86CurrentCursor(crtc->scrn->pScreen); ret = drmModeSetCursor2(drmmode->fd, drmmode_crtc->mode_crtc->crtc_id,