glx: unbind context if reusing with different drawable
I'm not familiar with glx, but here is the logic I followed to fix the crash in the game Anomaly Defenders.
The spec error it was triggering was If ctx is current to some other thread, then glXMakeContextCurrent will generate a BadAccess error
However the thread wasn't "some other thread" it was the same thread, when removing that error we then hit the same assert from #7961 (closed) where the comment above that assert says dri_unbind_context() is always called before this, so drawables are always NULL here.
Obviously this wasn't true for this scenario so here we fix that. Now the game runs fine.
Closes: #12246 (closed)
Maybe fixes #7961 (closed) also?
Please review.