glBindBufferRange does not update generic bind point state |
||
Issue descriptionDiscovered when debugging https://github.com/KhronosGroup/WebGL/pull/2604 GLES2Implementation::BindBufferRangeHelper is missing a block of logic that BindBufferBaseHelper has to detect errors and update the generic bind point state. Because of this the cache of bound buffers can become incorrect and bindBuffer calls can be incorrectly deduplicated in a situation like this: glBindBuffer(GL_UNIFORM_BUFFER, <buffer1>); glBindBufferRange(GL_UNIFORM_BUFFER, 1, <buffer2>); glBindBuffer(GL_UNIFORM_BUFFER, <buffer1>); <- this is not executed
,
Mar 10 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a2dd5d7e301241b77a91a9adfda1b05c65710708 commit a2dd5d7e301241b77a91a9adfda1b05c65710708 Author: James Darpinian <jdarpinian@chromium.org> Date: Sat Mar 10 06:26:47 2018 bindBufferRange must do the same validation as bindBufferBase. Bug: 819044 Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I3d7cf99b0785198c8906f4bf43d3fa072c565b4b Reviewed-on: https://chromium-review.googlesource.com/950462 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Cr-Commit-Position: refs/heads/master@{#542358} [modify] https://crrev.com/a2dd5d7e301241b77a91a9adfda1b05c65710708/gpu/command_buffer/client/gles2_implementation.cc [modify] https://crrev.com/a2dd5d7e301241b77a91a9adfda1b05c65710708/gpu/command_buffer/client/gles2_implementation.h
,
Mar 21 2018
|
||
►
Sign in to add a comment |
||
Comment 1 by jdarpinian@chromium.org
, Mar 6 2018