243
_cairo_xcb_connection_put_subimage (cairo_xcb_connection_t *connection,
257
const uint32_t req_size = sizeof(xcb_put_image_request_t);
258
uint32_t length = height * cpp * width;
259
uint32_t len = (req_size + length) >> 2;
261
if (len < connection->maximum_request_length) {
262
_cairo_xcb_connection_do_put_subimage (connection, dst, gc, src_x, src_y,
263
width, height, cpp, stride, dst_x, dst_y, depth, _data);
265
int rows = (connection->maximum_request_length - req_size - 4) / (cpp * width);
271
length = rows * cpp * width;
273
_cairo_xcb_connection_do_put_subimage (connection, dst, gc, src_x, src_y,
274
width, rows, cpp, stride, dst_x, dst_y, depth, _data);
278
_data = (char *) _data + stride * rows;
243
287
_cairo_xcb_connection_get_image (cairo_xcb_connection_t *connection,
244
288
xcb_drawable_t src,