[PATCH v2 05/12] modules: Fix entry leak in module-card-restore

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Peter Meerwald <p.meerwald@xxxxxxxxxxxxxxxxxx>

CID 1323585

entry_read() allocates an entry which must be freed
---
 src/modules/module-card-restore.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/modules/module-card-restore.c b/src/modules/module-card-restore.c
index eb6c94a..19069c2 100644
--- a/src/modules/module-card-restore.c
+++ b/src/modules/module-card-restore.c
@@ -438,13 +438,16 @@ static pa_hook_result_t profile_available_changed_callback(void *hook_data, void
     if (!entry)
         return PA_HOOK_OK;
 
-    if (!pa_streq(profile->name, entry->profile))
+    if (!pa_streq(profile->name, entry->profile)) {
+        entry_free(entry);
         return PA_HOOK_OK;
+    }
 
     pa_log_info("Card %s profile %s became available, activating.", card->name, profile->name);
     if (pa_card_set_profile(profile->card, profile, true) != 0)
         pa_log_warn("Could not set profile '%s'", profile->name);
 
+    entry_free(entry);
     return PA_HOOK_OK;
 }
 
-- 
1.9.1



[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux