message: Don't restore buffer bindings if they weren't changed
diff: @@ -1119,6 +1119,8 @@ void WrappedOpenGL::RestoreClientMemoryArrays(ClientMemoryData *clientMemoryArra
  if(!clientMemoryArrays)
  return;
  + if(!clientMemoryArrays->attribs.empty())
  + {
  // Restore the 0-buffer bindings and attrib pointers.
  gl_CurChunk = GLChunk::glBindBuffer;
  glBindBuffer(eGL_ARRAY_BUFFER, 0);
  @@ -1126,12 +1128,13 @@ void WrappedOpenGL::RestoreClientMemoryArrays(ClientMemoryData *clientMemoryArra
  for(const ClientMemoryData::VertexAttrib &attrib : clientMemoryArrays->attribs)
  {
  gl_CurChunk = GLChunk::glVertexAttribPointer;
  - glVertexAttribPointer(attrib.index, attrib.size, attrib.type, attrib.normalized, attrib.stride,
  - attrib.pointer);
  + glVertexAttribPointer(attrib.index, attrib.size, attrib.type, attrib.normalized,
  + attrib.stride, attrib.pointer);
  }
  gl_CurChunk = GLChunk::glBindBuffer;
  glBindBuffer(eGL_ARRAY_BUFFER, clientMemoryArrays->prevArrayBufferBinding);
  + }
  delete clientMemoryArrays;
  }
  