diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2012-08-24 10:34:05 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2012-08-24 11:38:58 +0100 |
commit | 5355eab17d026f5d5566e6de47c9dbffc5ece5d0 (patch) | |
tree | 4dd90e8ce2e0f415011bfd32bc89a44f455448fa /src/cairo-xlib-display.c | |
parent | 5c4087af810763ee98682b3bcc1c759ad8b4c27b (diff) | |
download | cairo-5355eab17d026f5d5566e6de47c9dbffc5ece5d0.tar.gz |
xlib/shm: Reduce the frequency at which we emit events
Flushing the shm operation is a fairly rare event, as it is typically
only involved with mixed rendering on a similar image, and should be
triggering its own events. Therefore we should be able to reduce our
event emission to the critical points in order to limit the amount of
extra overhead we generate.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/cairo-xlib-display.c')
-rw-r--r-- | src/cairo-xlib-display.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/cairo-xlib-display.c b/src/cairo-xlib-display.c index 32e4699fe..f23a6550d 100644 --- a/src/cairo-xlib-display.c +++ b/src/cairo-xlib-display.c @@ -63,6 +63,8 @@ _cairo_xlib_display_finish (void *abstract_display) cairo_xlib_display_t *display = abstract_display; Display *dpy = display->display; + _cairo_xlib_display_fini_shm (display); + if (! cairo_device_acquire (&display->base)) { cairo_xlib_error_func_t old_handler; @@ -83,8 +85,6 @@ _cairo_xlib_display_finish (void *abstract_display) link)); } - _cairo_xlib_display_fini_shm (display); - XSync (dpy, False); XSetErrorHandler (old_handler); |