'drawable' field of GLContextImpl is mutable via setGLDrawable(..),
which requires high-level locking as documented.
The required high-level locking allows us to _not_ add special
synchronization to this field (and drawableRead).
A simple null-check in makeCurrent() shall be sufficient,
plus ensuring mentioned high-level locking is applied.
GLContextImpl 'drawable' and 'drawableRead' synchronization:
- commit ad79bd072b600a3f2416cc6f0c61e2925000069d
check of null drawable is sufficient
- Add GLAutoDrawable upstream-lock locking to:
- AWT GLCanvas setupPrint/releasePrint
- AWT GLJPanel (was missing)
- validate shared-context native-surface locking,
throw exception if not successful
- pixelDataEvaluated does not need to be synchronized,
since it's being called while context is current, locking
- GLDrawableHelper.recreateGLDrawable(..): Remove redundant glFinish() call