OSDN Git Service

radv: don't leak DRM devices
authorGrazvydas Ignotas <notasas@gmail.com>
Tue, 2 May 2017 17:05:07 +0000 (20:05 +0300)
committerEmil Velikov <emil.l.velikov@gmail.com>
Mon, 8 May 2017 10:24:05 +0000 (11:24 +0100)
After successful drmGetDevices2() call, drmFreeDevices() needs to be called.

Fixes: 743315f2 "radv: do not open random render node(s)"
Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
(cherry picked from commit 8aab792e92d8f7d20a1e34169e8a714291ba1c6f)

src/amd/vulkan/radv_device.c

index 2c44667..8654b1e 100644 (file)
@@ -417,9 +417,11 @@ radv_enumerate_devices(struct radv_instance *instance)
                        if (result == VK_SUCCESS)
                                ++instance->physicalDeviceCount;
                        else if (result != VK_ERROR_INCOMPATIBLE_DRIVER)
-                               return result;
+                               break;
                }
        }
+       drmFreeDevices(devices, max_devices);
+
        return result;
 }