d3dcompiler_43: Free assignment on error (coverity)

André Hentschel nerv at dawncrow.de
Thu Oct 25 14:29:21 CDT 2012


CID 713387
---
 dlls/d3dcompiler_43/utils.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/dlls/d3dcompiler_43/utils.c b/dlls/d3dcompiler_43/utils.c
index 6d174f6..0f61f61 100644
--- a/dlls/d3dcompiler_43/utils.c
+++ b/dlls/d3dcompiler_43/utils.c
@@ -1637,6 +1637,7 @@ struct hlsl_ir_node *make_assignment(struct hlsl_ir_node *left, enum parse_assig
                     debug_hlsl_type(rhs->data_type), debug_hlsl_type(type));
             free_instr(lhs);
             free_instr(rhs);
+            d3dcompiler_free(assign);
             return NULL;
         }
         if (lhs->data_type->dimx * lhs->data_type->dimy < rhs->data_type->dimx * rhs->data_type->dimy)
@@ -1649,6 +1650,7 @@ struct hlsl_ir_node *make_assignment(struct hlsl_ir_node *left, enum parse_assig
             ERR("Couldn't implicitly convert expression to %s.\n", debug_hlsl_type(type));
             free_instr(lhs);
             free_instr(rhs);
+            d3dcompiler_free(assign);
             return NULL;
         }
         rhs = converted_rhs;
-- 
1.8.0



-- 

Best Regards, André Hentschel


More information about the wine-patches mailing list