summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>2019-06-21 09:28:50 +0900
committerYAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>2019-06-21 09:28:50 +0900
commitd63bfbcae4a31560468e8800fe8381fda3b9d2ce (patch)
tree77cde3b800dc1d803a43eae48136b795669355ca
parent2a229f495fe5c8be84b3c5718f87d86c8d06a644 (diff)
downloademacs-d63bfbcae4a31560468e8800fe8381fda3b9d2ce.tar.gz
* src/xterm.c (x_update_end) [USE_CAIRO]: Flush non-double-buffered surface.
-rw-r--r--src/xterm.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 38bf0a224d4..1acff2af0da 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -1240,6 +1240,15 @@ x_update_end (struct frame *f)
/* Mouse highlight may be displayed again. */
MOUSE_HL_INFO (f)->mouse_face_defer = false;
+#ifdef USE_CAIRO
+ if (!FRAME_X_DOUBLE_BUFFERED_P (f) && FRAME_CR_CONTEXT (f))
+ {
+ block_input ();
+ cairo_surface_flush (cairo_get_target (FRAME_CR_CONTEXT (f)));
+ unblock_input ();
+ }
+#endif
+
#ifndef XFlush
block_input ();
XFlush (FRAME_X_DISPLAY (f));