1*4882a593SmuzhiyunFrom efcd019c73262954d0167e0422b0189d9fe15880 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Jeffy Chen <jeffy.chen@rock-chips.com> 3*4882a593SmuzhiyunDate: Fri, 27 May 2022 15:39:10 +0800 4*4882a593SmuzhiyunSubject: [PATCH 65/92] compositor: Use current timestamp for animation 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunAvoid "unexpectedly large timestamp jump" warning for the first frame of 7*4882a593Smuzhiyunanimation. 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunSigned-off-by: Jeffy Chen <jeffy.chen@rock-chips.com> 10*4882a593Smuzhiyun--- 11*4882a593Smuzhiyun libweston/compositor.c | 4 +++- 12*4882a593Smuzhiyun 1 file changed, 3 insertions(+), 1 deletion(-) 13*4882a593Smuzhiyun 14*4882a593Smuzhiyundiff --git a/libweston/compositor.c b/libweston/compositor.c 15*4882a593Smuzhiyunindex 5c1d051..a99c8b8 100644 16*4882a593Smuzhiyun--- a/libweston/compositor.c 17*4882a593Smuzhiyun+++ b/libweston/compositor.c 18*4882a593Smuzhiyun@@ -3309,6 +3309,7 @@ weston_output_repaint(struct weston_output *output) 19*4882a593Smuzhiyun int r; 20*4882a593Smuzhiyun uint32_t frame_time_msec; 21*4882a593Smuzhiyun enum weston_hdcp_protection highest_requested = WESTON_HDCP_DISABLE; 22*4882a593Smuzhiyun+ struct timespec now; 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun if (output->destroying) 25*4882a593Smuzhiyun return 0; 26*4882a593Smuzhiyun@@ -3405,9 +3406,10 @@ weston_output_repaint(struct weston_output *output) 27*4882a593Smuzhiyun wl_resource_destroy(cb); 28*4882a593Smuzhiyun } 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun+ weston_compositor_read_presentation_clock(ec, &now); 31*4882a593Smuzhiyun wl_list_for_each_safe(animation, next, &output->animation_list, link) { 32*4882a593Smuzhiyun animation->frame_counter++; 33*4882a593Smuzhiyun- animation->frame(animation, output, &output->frame_time); 34*4882a593Smuzhiyun+ animation->frame(animation, output, &now); 35*4882a593Smuzhiyun } 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun TL_POINT(ec, "core_repaint_posted", TLP_OUTPUT(output), TLP_END); 38*4882a593Smuzhiyun-- 39*4882a593Smuzhiyun2.20.1 40*4882a593Smuzhiyun 41