[PATCH] libweston/compositor: Place timeline recording after checking if stamp is valid

Marius Vlad marius-cristian.vlad at nxp.com
Tue Mar 6 16:56:23 UTC 2018


The timestamp could be either NULL if there's no mode set, or 0 when output gets
awaken. It either crashes weston or we get vblanks at [0, 0] for that output.

Signed-off-by: Marius Vlad <marius-cristian.vlad at nxp.com>
CC: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
---
 libweston/compositor.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libweston/compositor.c b/libweston/compositor.c
index aec937b..274a22d 100644
--- a/libweston/compositor.c
+++ b/libweston/compositor.c
@@ -2495,8 +2495,6 @@ weston_output_finish_frame(struct weston_output *output,
 	struct timespec now;
 	int64_t msec_rel;
 
-	TL_POINT("core_repaint_finished", TLP_OUTPUT(output),
-		 TLP_VBLANK(stamp), TLP_END);
 
 	assert(output->repaint_status == REPAINT_AWAITING_COMPLETION);
 	assert(stamp || (presented_flags & WP_PRESENTATION_FEEDBACK_INVALID));
@@ -2511,6 +2509,9 @@ weston_output_finish_frame(struct weston_output *output,
 		goto out;
 	}
 
+	TL_POINT("core_repaint_finished", TLP_OUTPUT(output),
+		 TLP_VBLANK(stamp), TLP_END);
+
 	refresh_nsec = millihz_to_nsec(output->current_mode->refresh);
 	weston_presentation_feedback_present_list(&output->feedback_list,
 						  output, refresh_nsec, stamp,
-- 
2.9.3



More information about the wayland-devel mailing list