diff --git a/src/modules/evas/engines/software_x11/evas_xlib_swapper.c b/src/modules/evas/engines/software_x11/evas_xlib_swapper.c index 581f14097f..47468c9485 100644 --- a/src/modules/evas/engines/software_x11/evas_xlib_swapper.c +++ b/src/modules/evas/engines/software_x11/evas_xlib_swapper.c @@ -688,7 +688,11 @@ evas_xlib_swapper_buffer_map(X_Swapper *swp, int *bpl, int *w, int *h) if (swp->mapped) { - if (bpl) *bpl = swp->w * 4; + if (bpl) + { + if ((swp->buf) && (swp->buf->pitch > 0)) *bpl = swp->buf->pitch; + else *bpl = swp->w * 4; + } return swp->buf_data; } swp->buf = sym_DRI2GetBuffers(swp->disp, swp->draw,