From 3137e9db2720dcd4229915eb85c3e9abca8f1ec3 Mon Sep 17 00:00:00 2001 From: Farshid Monhaseri Date: Wed, 22 Jan 2020 19:19:16 +0330 Subject: mediascanner: fix the service memory leakages Bug-AGL: SPEC-3103 - fix memory leakage in 'media_results_get' callback function which is called by 'media_result' verb. Set free-full the whole list with 'free_media_item' callback function(major leak). - fix memory leakage in 'MediaPlayerManagerInit' function, file object is not released(minor leak). - fix memory leakage in 'media_lightmediascanner_scan' function and avoid open sqlite3 connection and allocate whole sqlite resources again and again on every function execution (major leak). - fix memory leakage in 'on_interface_proxy_properties_changed' when iterating over 'changed_properties' and not release key & subValues. Signed-off-by: Farshid Monhaseri Change-Id: I943a961b0c13be79c70c80e7a4f558958551f800 --- binding/media-manager.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'binding/media-manager.h') diff --git a/binding/media-manager.h b/binding/media-manager.h index c5b6778..65ee831 100644 --- a/binding/media-manager.h +++ b/binding/media-manager.h @@ -111,6 +111,7 @@ typedef struct { gint type_filter; GMutex m; Scanner1 *lms_proxy; + GFileMonitor *mon; } stMediaPlayerManage; typedef struct tagBinding_RegisterCallback @@ -120,6 +121,7 @@ typedef struct tagBinding_RegisterCallback } Binding_RegisterCallback_t; /* ------ PUBLIC PLUGIN FUNCTIONS --------- */ +void free_media_item(void *data); void BindingAPIRegister(const Binding_RegisterCallback_t* pstRegisterCallback); int MediaPlayerManagerInit(void); -- cgit 1.2.3-korg