Fix the copy-ops part of the ARB_sparse_buffer tests
1. The generic BufferStorageTest framework will allocate a new sparse
buffer object for each test case, so m_sparse_bos must be updated
for each iteration.
For the same reason, the m_sparse_bos array is not yet initialized
when initTestCases is called. So instead of storing a BO ID in the
test case description, we store an index into the m_sparse_bos array
(and the index is only used when the dst/src bo is supposed to be
sparse).
2. When the same sparse buffer object is used as both source and
destination, both source and destination commit ranges must
actually be committed.
Affects:
GL45-CTS.sparse_buffer_tests.BufferStorageTest
Components: OpenGL
VK-GL-CTS issue: 332
Change-Id: I8b92e716464d5f602e636480ea53648c216d1e7e