From: Ray Strode Date: Tue, 7 Jun 2016 12:28:03 +0000 (-0400) Subject: device-manager: fix use after free X-Git-Tag: 0.9.3~29 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=375a65fff65d7011642fdc438765f820dd662d4d;p=thirdparty%2Fplymouth.git device-manager: fix use after free If a renderer fails to open, then we need to make sure we nullify, the renderer variable after freeing it, since subsequent code checks if the renderer is null to know whether or not to proceed with fallback. --- diff --git a/src/libply-splash-core/ply-device-manager.c b/src/libply-splash-core/ply-device-manager.c index 877b7cd0..bdc07b39 100644 --- a/src/libply-splash-core/ply-device-manager.c +++ b/src/libply-splash-core/ply-device-manager.c @@ -669,6 +669,7 @@ create_devices_for_terminal_and_renderer_type (ply_device_manager_t *manager, if (!ply_renderer_open (renderer)) { ply_trace ("could not open renderer for %s", device_path); ply_renderer_free (renderer); + renderer = NULL; if (renderer_type != PLY_RENDERER_TYPE_AUTO) return;