img: fix apparent double-free in img_svg_render() failure path

img_svg_render() calls g_object_unref() on the RsvgHandle in its
error path, but the handle is owned by the shared lab_img_data
struct and will be double-freed later by lab_img_destroy().

The double-free was introduced when img_svg_load() was split from
img_svg_render(). The g_object_unref() should have been removed from
img_svg_render() but was missed.

Fixes: 16dbdc64e5
("ssd: rework titlebar button rendering")
This commit is contained in:
John Lindgren 2025-07-12 21:30:26 -04:00 committed by Hiroaki Yamamoto
parent bb2d34a5c1
commit 359dd8f3c7

View file

@ -65,6 +65,5 @@ img_svg_render(RsvgHandle *svg, int w, int h, double scale)
error:
wlr_buffer_drop(&buffer->base);
cairo_destroy(cr);
g_object_unref(svg);
return NULL;
}