Diff between 19206e7bb0de88e00fa4d17db951ace3d4e84fac and 2b440236f99524cc42e50b98f8b6b1510330c32e

Changed Files

File Additions Deletions Status
tools/amptest.c +8 -4 modified

Full Patch

diff --git a/tools/amptest.c b/tools/amptest.c
index 16f15bc..6192f7e 100644
--- a/tools/amptest.c
+++ b/tools/amptest.c
@@ -496,6 +496,7 @@ static bool find_amp_controller(void)
 	struct hci_dev_list_req *dl;
 	struct hci_dev_req *dr;
 	int fd, i;
+	bool result;
 
 	fd = socket(AF_BLUETOOTH, SOCK_RAW, BTPROTO_HCI);
 	if (fd < 0) {
@@ -515,8 +516,8 @@ static bool find_amp_controller(void)
 
 	if (ioctl(fd, HCIGETDEVLIST, (void *) dl) < 0) {
 		perror("Failed to get HCI device list");
-		close(fd);
-		return false;
+		result = false;
+		goto done;
 	}
 
 	for (i = 0; i< dl->dev_num; i++) {
@@ -541,9 +542,12 @@ static bool find_amp_controller(void)
 		}
 	}
 
-	close(fd);
+	result = true;
 
-	return true;
+done:
+	free(dl);
+	close(fd);
+	return result;
 }
 
 int main(int argc ,char *argv[])