summaryrefslogtreecommitdiffstats
path: root/src/glsl/linker.cpp
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2015-06-28 22:17:16 -0700
committerKenneth Graunke <[email protected]>2015-06-28 22:20:27 -0700
commit6218c68bece0cea671f2940a651119a87ab8b24e (patch)
treec9fb84243de1bdad50d9f818006435e98178bbc5 /src/glsl/linker.cpp
parentcae701fc8ed0faeaaaafd1cf57f6143031edcab2 (diff)
Revert "glsl: clone inputs and outputs during linking"
This reverts commit c2ff3485b3d48749ea9dcad07bc1a691627dc3e5. Ilia and I noticed a memory leak caused by this patch: at least with fixed-function programs, we clone things using ProgramResourceList as the context before reralloc makes it non-NULL. I believe Tapani found other bugs with these patches, so I'm just going to revert them for now and let him pursue them further.
Diffstat (limited to 'src/glsl/linker.cpp')
-rw-r--r--src/glsl/linker.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp
index 5da9cadcb08..4a726d4e2e7 100644
--- a/src/glsl/linker.cpp
+++ b/src/glsl/linker.cpp
@@ -2637,9 +2637,7 @@ add_interface_variables(struct gl_shader_program *shProg,
continue;
};
- /* Clone ir_variable data so that backend is able to free memory. */
- if (!add_program_resource(shProg, programInterface,
- var->clone(shProg->ProgramResourceList, NULL),
+ if (!add_program_resource(shProg, programInterface, var,
build_stageref(shProg, var->name) | mask))
return false;
}