From: Wataru Natsume <[email protected]>

get_surfaces_on_layer() allocates memory and stores the pointer to 'ivisurfs'. 
But it was not freed.

Signed-off-by: Wataru Natsume <[email protected]>
---
 ivi-shell/hmi-controller.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/ivi-shell/hmi-controller.c b/ivi-shell/hmi-controller.c
index ace6555..6548ed7 100644
--- a/ivi-shell/hmi-controller.c
+++ b/ivi-shell/hmi-controller.c
@@ -655,7 +655,7 @@ set_notification_configure_surface(struct 
ivi_layout_surface *ivisurf,
        struct hmi_controller_layer *layer_link = NULL;
        struct ivi_layout_layer *application_layer = NULL;
        struct weston_surface *surface;
-       struct ivi_layout_surface **ivisurfs;
+       struct ivi_layout_surface **ivisurfs = NULL;
        int32_t length = 0;
        int32_t i;
 
@@ -690,9 +690,12 @@ set_notification_configure_surface(struct 
ivi_layout_surface *ivisurf,
                                 * commit_changes to apply source_rectangle.
                                 */
                                ivi_layout_interface->commit_changes();
+                               free(ivisurfs);
                                return;
                        }
                }
+               free(ivisurfs);
+               ivisurfs = NULL;
        }
 
        switch_mode(hmi_ctrl, hmi_ctrl->layout_mode);
-- 
1.7.9.5

_______________________________________________
wayland-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to