st/xlib Fix XIMage bytes-per-pixel calculation

Fixes a crash seen while running gnome on a 16-bit screen over vnc.

NOTE: This is a candidate for stable release branches.

Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Richard Sandiford <rsandifo@linux.vnet.ibm.com>
This commit is contained in:
Richard Sandiford 2013-06-17 12:10:49 -04:00 committed by Adam Jackson
parent ebd68dd029
commit 876fefe2ff
1 changed files with 2 additions and 3 deletions

View File

@ -1407,9 +1407,8 @@ XMesaBindTexImage(Display *dpy, XMesaBuffer drawable, int buffer,
return;
}
/* The pipe transfer has a pitch rounded up to the nearest 64 pixels.
We assume 32 bit pixels. */
ximage_stride = w * 4;
/* The pipe transfer has a pitch rounded up to the nearest 64 pixels. */
ximage_stride = w * ((img->bits_per_pixel + 7) / 8);
for (line = 0; line < h; line++)
memcpy(&map[line * tex_xfer->stride],