This happened because the viewport was drawn after the UV editor when some update occur (e.g. canceling an operator). The requested UV edit batch would require only one specific UV channel. The viewport, in need of a different UV channel, requested a VBO rebuild (freing the old UV VBO) but did not correctly clear the UV batches that were referencing the said VBO. This lead to use after free which would sometime works because the same memory would be reused for a random new batch. Pull Request: https://projects.blender.org/blender/blender/pulls/136780