glx: Make drawables persistent untill they are changed by glXMakeCurrent
This fixes bug that xdemos/manywin would segfault if it was run with command
./manywin 2. Demo is tring to call glXSwapBuffers while another context was
bind using glXMakeCurrent.
Fix is simple makes drawable and readable persistent untill they change or
context is destroyed.
I found a logic error when same dri context is used for multiple drawables
which caused readable and drawable to fall out of sync in special case. Fix
is simple just updating drawables more often than in original patch.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>