1
0
Fork 0

drm_hwcomposer: Initialize timeline_next to 1

Initialize timeline_next to 1, because point 0 will be the very first
set operation. Since we increment every time set() is called,
initializing to 0 would cause an off-by-one error where
surfaceflinger would always composite on the front buffer.

Change-Id: I1e67c36864716595eb489286a7db3f1dcb04f67e
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Reviewed-on: https://chrome-internal-review.googlesource.com/200735
Tested-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Allen Martin <amartin@nvidia.com>
Reviewed-by: Sean Paul <seanpaul@google.com>
This commit is contained in:
Sean Paul 2015-02-22 17:55:43 -05:00 committed by Sean Paul
parent a99534ab0d
commit e147a2a71f

View file

@ -1194,7 +1194,14 @@ static int hwc_initialize_display(struct hwc_context_t *ctx, int display,
return ret;
}
hd->timeline_fd = ret;
hd->timeline_next = 0;
/*
* Initialize timeline_next to 1, because point 0 will be the very first
* set operation. Since we increment every time set() is called,
* initializing to 0 would cause an off-by-one error where
* surfaceflinger would composite on the front buffer.
*/
hd->timeline_next = 1;
ret = hwc_set_initial_config(hd);
if (ret) {