diff options
author | Chris Michael <cp.michael@samsung.com> | 2016-10-11 11:30:13 -0400 |
---|---|---|
committer | Chris Michael <cp.michael@samsung.com> | 2016-10-11 11:30:49 -0400 |
commit | aba152a8be0f87387b123e9388472d4367ffb713 (patch) | |
tree | 4c7edfe2601f55e37e5c4195f602c0ada124bc28 | |
parent | fb112b8fab68f8926604650539b5621ef3c9fbe8 (diff) | |
download | efl-aba152a8be0f87387b123e9388472d4367ffb713.tar.gz |
ecore-drm2: Free Output modes on destroy
When we destroy outputs, we should be freeing the Output's Modes also
as that was previously allocated memory.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
-rw-r--r-- | src/lib/ecore_drm2/ecore_drm2_outputs.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c b/src/lib/ecore_drm2/ecore_drm2_outputs.c index 84a6076418..fe3db163e7 100644 --- a/src/lib/ecore_drm2/ecore_drm2_outputs.c +++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c @@ -885,6 +885,15 @@ _cb_output_event(const char *device EINA_UNUSED, Eeze_Udev_Event event EINA_UNUS static void _output_destroy(Ecore_Drm2_Device *dev, Ecore_Drm2_Output *output) { + Ecore_Drm2_Output_Mode *mode; + + EINA_LIST_FREE(output->modes, mode) + { + if (mode->id) + drmModeDestroyPropertyBlob(output->fd, mode->id); + free(mode); + } + dev->alloc.crtc &= ~(1 << output->crtc_id); dev->alloc.conn &= ~(1 << output->conn_id); |