From 6e195aededf9c27b5d1887deae66262b0d553ec2 Mon Sep 17 00:00:00 2001
From: Guillem Jover <guillem@hadrons.org>
Date: Fri, 31 May 2013 21:31:46 +0200
Subject: [PATCH] bluetooth: Fix memory leaks on error or when not pairing
Status: applied

Warned-by: cppcheck
---
 src/bluetooth.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/bluetooth.c b/src/bluetooth.c
index 28df08c..b446fd7 100644
--- a/src/bluetooth.c
+++ b/src/bluetooth.c
@@ -756,11 +756,14 @@ int __near_bluetooth_parse_oob_record(struct carrier_data *data,
 		}
 		ptr = ptr + oob->bt_name_len;
 	} else {
+		bt_eir_free(oob);
 		return -EINVAL;
 	}
 
-	if (pair == FALSE)
+	if (pair == FALSE) {
+		bt_eir_free(oob);
 		return 0;
+	}
 
 	/* check and get the default adapter */
 	oob->def_adapter = g_strdup(bt_def_oob_data.def_adapter);
-- 
1.8.3

