i965/fs: Actually free program data on the error path.

We throw away the data generated during compilation on the success path,
so we really ought to on the failure path as well.  The caller has no
access to it anyway, so it's purely leaked.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
This commit is contained in:
Kenneth Graunke 2014-05-14 01:04:02 -07:00
parent c96fdeb723
commit 81b11bf093
1 changed files with 3 additions and 1 deletions

View File

@ -181,8 +181,10 @@ bool do_wm_prog(struct brw_context *brw,
&fp->program);
program = brw_wm_fs_emit(brw, c, &fp->program, prog, &program_size);
if (program == NULL)
if (program == NULL) {
ralloc_free(c);
return false;
}
if (c->prog_data.total_scratch) {
brw_get_scratch_bo(brw, &brw->wm.base.scratch_bo,