]> git.eshelyaron.com Git - emacs.git/commitdiff
Make frame synchronization conditional on clock_gettime
authorPo Lu <luangruo@yahoo.com>
Tue, 23 Aug 2022 12:52:41 +0000 (20:52 +0800)
committerPo Lu <luangruo@yahoo.com>
Tue, 23 Aug 2022 12:53:24 +0000 (20:53 +0800)
* src/xfns.c (x_set_parent_frame)
(x_set_use_frame_synchronization):
* src/xterm.c (x_update_begin, show_back_buffer, x_update_end)
(x_display_set_last_user_time, handle_one_xevent):
* src/xterm.h (struct x_output): Define out vsync code when
!HAVE_CLOCK_GETTIME.  (bug#57346)

src/xfns.c
src/xterm.c
src/xterm.h

index 7eecda6dbd10e62ad83045fc17cfb1a8fff2fbb3..0b1f707e9fc724603ff09f9eb3c69a174172f983 100644 (file)
@@ -5156,7 +5156,8 @@ This function is an internal primitive--use `make-frame' instead.  */)
                       ((STRINGP (value)
                         && !strcmp (SSDATA (value), "extended")) ? 2 : 1));
 
-#if defined HAVE_XSYNCTRIGGERFENCE && !defined USE_GTK
+#if defined HAVE_XSYNCTRIGGERFENCE && !defined USE_GTK \
+  && defined HAVE_CLOCK_GETTIME
       x_sync_init_fences (f);
 #endif
 #endif
index 8de273cb8f536ff63849cdf83918613bdc8c27f7..26c512d80a84fd795bbb5dbbddbef95a99dd2ad8 100644 (file)
@@ -7600,7 +7600,7 @@ x_display_set_last_user_time (struct x_display_info *dpyinfo, Time time,
 #ifndef USE_GTK
   struct frame *focus_frame;
   Time old_time;
-#if defined HAVE_XSYNC
+#if defined HAVE_XSYNC && defined HAVE_CLOCK_GETTIME
   uint64_t monotonic_time;
 #endif
 
@@ -27024,7 +27024,7 @@ x_free_frame_resources (struct frame *f)
        XFreeCursor (FRAME_X_DISPLAY (f), f->output_data.x->bottom_left_corner_cursor);
 
       /* Free sync fences.  */
-#if defined HAVE_XSYNCTRIGGERFENCE && !defined USE_GTK
+#if defined HAVE_XSYNCTRIGGERFENCE && !defined USE_GTK && defined CLOCK_GETTIME
       x_sync_free_fences (f);
 #endif
     }
index 75277c166e0bc1cf245fdd40f4d1cfd3cedc3115..8500ec27710c017b95e65e1384604b7f8dffb71f 100644 (file)
@@ -1577,7 +1577,8 @@ extern void x_make_frame_invisible (struct frame *);
 extern void x_iconify_frame (struct frame *);
 extern void x_free_frame_resources (struct frame *);
 extern void x_wm_set_size_hint (struct frame *, long, bool);
-#if defined HAVE_XSYNCTRIGGERFENCE && !defined USE_GTK
+#if defined HAVE_XSYNCTRIGGERFENCE && !defined USE_GTK \
+  && defined HAVE_CLOCK_GETTIME
 extern void x_sync_init_fences (struct frame *);
 #endif