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