public void DestroySurface()
{
if (Surface != IntPtr.Zero)
{
if (Egl.GetCurrentSurface(Egl.DRAW) == Surface)
{
Egl.MakeCurrent(Display, IntPtr.Zero, IntPtr.Zero, IntPtr.Zero);
}
if (!Egl.DestroySurface(Display, Surface))
{
Debug.Print("[Warning] Failed to destroy {0}:{1}.", Surface.GetType().Name, Surface);
}
Surface = IntPtr.Zero;
}
}