worker: simplify surface_update_dest()

Acked-by: Frediano Ziglio <fziglio@redhat.com>
This commit is contained in:
Marc-André Lureau 2015-11-23 19:45:13 +01:00 committed by Frediano Ziglio
parent 9e5363d483
commit 30e0aabace

View File

@ -938,21 +938,22 @@ static void image_surface_init(DisplayChannel *display)
static void surface_update_dest(RedSurface *surface, const SpiceRect *area)
{
if (!surface->context.canvas_draws_on_surface) {
SpiceCanvas *canvas = surface->context.canvas;
int h;
int stride = surface->context.stride;
uint8_t *line_0 = surface->context.line_0;
SpiceCanvas *canvas = surface->context.canvas;
int stride = surface->context.stride;
uint8_t *line_0 = surface->context.line_0;
if (!(h = area->bottom - area->top)) {
return;
}
if (surface->context.canvas_draws_on_surface)
return;
spice_assert(stride < 0);
uint8_t *dest = line_0 + (area->top * stride) + area->left * sizeof(uint32_t);
dest += (h - 1) * stride;
canvas->ops->read_bits(canvas, dest, -stride, area);
}
int h = area->bottom - area->top;
if (h == 0)
return;
spice_return_if_fail(stride < 0);
uint8_t *dest = line_0 + (area->top * stride) + area->left * sizeof(uint32_t);
dest += (h - 1) * stride;
canvas->ops->read_bits(canvas, dest, -stride, area);
}
/*