Need a distinction between attached and linked program shaders
- Dominant language
- Go
- Stars
- 2.2k
- Forks
- 329
- PR merge metrics
- No merged PRs in 30d
Description
It is valid GL to detach (and even delete) a shader from a program and still keep using that program. The shader only gets "really detached" once the program is linked again.
Currently, if glDetachShader is called, GAPIS tells the UI that no shader is attached to the program and the UI cannot show the program's source. Instead, GAPIS needs to make a distinction between attached shaders and linked shaders.
As an extension of this, care needs to be taken not to reap deleted shaders that are still "linked" by a program, so the source can still be shown in the UI.
Also, it is allowed to change the source of a shader that is still attached to a program, re-compile it, attach it to another program, and link and use that program. Doing so has no effect on the original program the shader was/is attached to.
Contributor guide
Assessment
This issue has not been assessed yet.