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.
diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp
index 5da9cad..4a726d4 100644
--- a/src/glsl/linker.cpp
+++ b/src/glsl/linker.cpp
@@ -2637,9 +2637,7 @@
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;
}