google / google/gapid

Need a distinction between attached and linked program shaders

Open
#398 0 comments 0 reactions 0 assignees View on GitHub
bug GAPIS GLES P3 triaged
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.