xwayland: Do not free a NULL GBM bo
Both gbm_bo_create()
and gbm_bo_create_with_modifiers()
can fail and
return NULL
.
If that occurs, xwl_glamor_gbm_create_pixmap()
will not create a
pixmap for the (NULL) GBM bo, but would still try to free the bo which
leads to a crash in mesa:
[...]
#7 <signal handler called>
#8 in gbm_bo_destroy (bo=0x0) at ../src/gbm/main/gbm.c:439
#9 in xwl_glamor_gbm_create_pixmap () at xwayland-glamor-gbm.c:245
format = <optimized out>
xwl_screen = <optimized out>
xwl_gbm = <optimized out>
bo = 0x0
pixmap = <optimized out>
#10 in ProcCreatePixmap () at dispatch.c:1440
#11 in Dispatch () at dispatch.c:478
#12 in dix_main () at main.c:276
To avoid the crash, only free the GBM bo if not NULL
.
Signed-off-by: Olivier Fourdan ofourdan@redhat.com Bugzilla: https://bugzilla.redhat.com/1729925
Edited by Adam Jackson