diff --git a/src/picture.c b/src/picture.c index d7467e9..f9c559b 100644 --- a/src/picture.c +++ b/src/picture.c @@ -141,6 +141,7 @@ VAStatus SunxiCedrusEndPicture(VADriverContextP context, unsigned int control_size; unsigned int control_id; int request_fd; + VAStatus status; int rc; context_object = CONTEXT(context_id); @@ -193,6 +194,10 @@ VAStatus SunxiCedrusEndPicture(VADriverContextP context, surface_object->slices_size = 0; + status = SunxiCedrusSyncSurface(context, context_object->render_surface_id); + if (status != VA_STATUS_SUCCESS) + return status; + context_object->render_surface_id = VA_INVALID_ID; return VA_STATUS_SUCCESS;