Re: [igt-dev] [PATCH i-g-t v3 15/21] lib/igt_chamelium: Fixup resources liberation in comparison helpers

Lyude Paul
2019-01-15T22:01:13Z

Nice catch here!

Reviewed-by: Lyude Paul <lyude@redhat.com>

On Fri, 2019-01-11 at 10:05 +0100, Paul Kocialkowski wrote:
> This fixes a bunch of occurrences of memory not being properly
> liberated after its use in helpers revolving around frame/CRC
> comparison.
>
> Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
> ---
> lib/igt_chamelium.c | 13 +++++++++----
> 1 file changed, 9 insertions(+), 4 deletions(-)
>
> diff --git a/lib/igt_chamelium.c b/lib/igt_chamelium.c
> index 32b859eac4a7..0b6ac37a3d89 100644
> --- a/lib/igt_chamelium.c
> +++ b/lib/igt_chamelium.c
> @@ -1060,9 +1060,9 @@ void chamelium_assert_crc_eq_or_dump(struct chamelium
> *chamelium,
> free(reference_suffix);
> free(capture_suffix);
>
> - chamelium_destroy_frame_dump(frame);
> -
> + cairo_surface_destroy(reference);
> cairo_surface_destroy(capture);
> + chamelium_destroy_frame_dump(frame);
> }
>
> igt_assert(eq);
> @@ -1120,11 +1120,14 @@ void
> chamelium_assert_analog_frame_match_or_dump(struct chamelium *chamelium,
>
> free(reference_suffix);
> free(capture_suffix);
> + free(reference_crc);
> + free(capture_crc);
> }
>
> - cairo_surface_destroy(capture);
> -
> igt_assert(match);
> +
> + cairo_surface_destroy(reference);
> + cairo_surface_destroy(capture);
> }
>
>
> @@ -1323,6 +1326,8 @@ igt_crc_t *chamelium_calculate_fb_crc(int fd, struct
> igt_fb *fb)
>
> chamelium_do_calculate_fb_crc(fb_surface, ret);
>
> + cairo_surface_destroy(fb_surface);
> +
> return ret;
> }
>
--
Cheers,
Lyude Paul