On 05/04/2016 08:52 AM, Rowley, Timothy O wrote:
After shader compilation, the gallivm_state is owned by ShaderVariant<> and 
destroyed by its destructor (swr_state.h) so that the generated JIT code and 
gallivm_state can be freed when no longer needed.


Oh. Splendid.
Thanks for looking into it.


Rob.

On May 3, 2016, at 5:45 PM, robert.f...@collabora.com wrote:

From: Robert Foss <robert.f...@collabora.com>

Make sure that memory allocated is free'd.
Previously only the contents of the variable
galliumvm was free'd, not the actual memory
it points to.

Coverity: 1358907
Signed-off-by: Robert Foss <robert.f...@collabora.com>
---
src/gallium/drivers/swr/swr_shader.cpp | 1 +
1 file changed, 1 insertion(+)

diff --git a/src/gallium/drivers/swr/swr_shader.cpp 
b/src/gallium/drivers/swr/swr_shader.cpp
index f693f51..5b1b1ee 100644
--- a/src/gallium/drivers/swr/swr_shader.cpp
+++ b/src/gallium/drivers/swr/swr_shader.cpp
@@ -134,6 +134,7 @@ struct BuilderSWR : public Builder {

    ~BuilderSWR() {
       gallivm_free_ir(gallivm);
+      FREE(gallivm);
    }

    struct gallivm_state *gallivm;
--
2.5.0

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to