Vulkan: Avoid unnecessary observer changes for Buffers Noticed in black_desert_mobile hat it calls glVertexAttribPointer with some buffer. What we end up doing is remove observer from old buffer and add observer to new buffer. This CL checks if old and new buffer are the same and skip some of the logic if both buffers are the same. Also added check in VertexArrayBufferContentsObservers::disableForBuffer to early out if it was not enabled in the first place. Bug: b/356473483 Change-Id: I872dcee7d87b404f525d0323d2952c8249ef1c9a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5760652 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com>