mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-06-13 10:39:20 +02:00
xlib/shm: Always request a CompletionEvent from ShmPutImage
...and treat is as an expected event for synchronisation. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
parent
a364a106b2
commit
fd59e6d86a
2 changed files with 4 additions and 10 deletions
|
|
@ -404,11 +404,6 @@ peek_processed (cairo_device_t *device)
|
|||
return LastKnownRequestProcessed (peek_display(device));
|
||||
}
|
||||
|
||||
static unsigned next_request (cairo_device_t *device)
|
||||
{
|
||||
return NextRequest (peek_display (device));
|
||||
}
|
||||
|
||||
static void
|
||||
_cairo_xlib_display_shm_pool_destroy (cairo_xlib_display_t *display,
|
||||
cairo_xlib_shm_t *pool)
|
||||
|
|
@ -1231,10 +1226,10 @@ _cairo_xlib_shm_surface_get_ximage (cairo_surface_t *surface,
|
|||
void *
|
||||
_cairo_xlib_shm_surface_get_obdata (cairo_surface_t *surface)
|
||||
{
|
||||
cairo_xlib_shm_surface_t *shm;
|
||||
cairo_xlib_display_t *display = (cairo_xlib_display_t *) surface->device;
|
||||
cairo_xlib_shm_surface_t *shm = (cairo_xlib_shm_surface_t *) surface;
|
||||
|
||||
shm = (cairo_xlib_shm_surface_t *) surface;
|
||||
shm->active = next_request (surface->device);
|
||||
display->shm->last_event = shm->active = NextRequest (display->display);
|
||||
return &shm->info->pool->shm;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1345,8 +1345,7 @@ _cairo_xlib_surface_draw_image (cairo_xlib_surface_t *surface,
|
|||
|
||||
if (ximage.obdata)
|
||||
XShmPutImage (display->display, surface->drawable, gc, &ximage,
|
||||
src_x, src_y, dst_x, dst_y, width, height,
|
||||
shm_image == NULL);
|
||||
src_x, src_y, dst_x, dst_y, width, height, True);
|
||||
else
|
||||
XPutImage (display->display, surface->drawable, gc, &ximage,
|
||||
src_x, src_y, dst_x, dst_y, width, height);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue