Fix wrong caching of glBindBuffer

Fixes: 127884817

Previously, we incorrectly skipped setting the client state's
non-indexed bindings such as GL_ELEMENT_ARRAY_BUFFER_BINDING.

This resulted in the guest binding buffer 0 and not having that
reflected in GLClientState, which ended up segaulting in
index range calculation, as a nonzero index buffer object would be used
as the base, and indices argument to glDrawElements
incorrectly treated as an offset.

This CL makes it so that the client state in the guest
is properly updated.

Change-Id: I19eefe1106a59d86e618e9746b6b2bcd5539e7cd
3 files changed