diff --git a/src/cairo-xlib-screen.c b/src/cairo-xlib-screen.c index 4ff3b8a47..f75774206 100644 --- a/src/cairo-xlib-screen.c +++ b/src/cairo-xlib-screen.c @@ -384,8 +384,10 @@ _cairo_xlib_screen_get_gc (cairo_xlib_screen_info_t *info, int depth) gc = info->gc[depth]; info->gc[depth] = NULL; - if (info->gc_needs_clip_reset & (1 << depth)) + if (info->gc_needs_clip_reset & (1 << depth)) { XSetClipMask(info->display->display, gc, None); + info->gc_needs_clip_reset &= ~(1 << depth); + } return gc; }