teglImageFormatTests: call glFinish after creating the buffer in the client API
authorNicolai Hähnle <nicolai.haehnle@amd.com>
Mon, 20 Nov 2017 15:08:51 +0000 (16:08 +0100)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Wed, 14 Mar 2018 08:02:44 +0000 (04:02 -0400)
commite9c93ece28719bcdde74e75dae114f8188e380a3
tree89219c6746e7c722339bff7e8639a9a7fba2f144
parent201f629886fb257cb11e85dc15271850bf71ffc2
teglImageFormatTests: call glFinish after creating the buffer in the client API

According to section 3.7.3.2 (Order of Rendering Operations Between
Contexts) of the EGL spec, the application is responsible for
synchronization between different rendering contexts even in the same
thread.

Some of the tests execute a sequence of operations like this (see
MultiContextRenderTests::init):

1. ctx0: create image
2. ctx0: read from image
3. ctx0: clear image
4. ctx1: recreate image
5. ctx0: read from image
6. ctx1: read from image

This change adds a call to glFinish between steps 4 and 5 that is needed
for correctness. Note that other parts of the same file already call
glFinish, e.g. the various Render actions.

Components: EGL
VK-GL-CTS issue: 857
Affects:
dEQP-EGL.functional.image.render_multiple_contexts.gles2_*_read_pixels

Change-Id: I4dc50f7516374405596653d7006165819b95b6fa
modules/egl/teglImageFormatTests.cpp