Changes the program. The previous program will be released.
The appropriate EGL context must be current.