The shaders must be destroyed _before_ the GL context is destroyed.