Diff between 9ee1038cff9e9e3eaa637df94704801cf09cbe66 and f942320125dddc0ef2f2f497251289c8457b10d4

Changed Files

File Additions Deletions Status
profiles/audio/avrcp.c +8 -6 modified

Full Patch

diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
index 715ab8f..e6d0e72 100644
--- a/profiles/audio/avrcp.c
+++ b/profiles/audio/avrcp.c
@@ -245,7 +245,7 @@ static sdp_record_t *avrcp_ct_record(void)
 	sdp_profile_desc_t profile[1];
 	sdp_list_t *aproto, *aproto1, *proto[2], *proto1[2];
 	sdp_record_t *record;
-	sdp_data_t *psm, *version, *features;
+	sdp_data_t *psm[2], *version, *features;
 	uint16_t lp = AVCTP_CONTROL_PSM, ap = AVCTP_BROWSING_PSM;
 	uint16_t avrcp_ver = 0x0105, avctp_ver = 0x0103;
 	uint16_t feat = ( AVRCP_FEATURE_CATEGORY_1 |
@@ -269,8 +269,8 @@ static sdp_record_t *avrcp_ct_record(void)
 	/* Protocol Descriptor List */
 	sdp_uuid16_create(&l2cap, L2CAP_UUID);
 	proto[0] = sdp_list_append(0, &l2cap);
-	psm = sdp_data_alloc(SDP_UINT16, &lp);
-	proto[0] = sdp_list_append(proto[0], psm);
+	psm[0] = sdp_data_alloc(SDP_UINT16, &lp);
+	proto[0] = sdp_list_append(proto[0], psm[0]);
 	apseq = sdp_list_append(0, proto[0]);
 
 	sdp_uuid16_create(&avctp, AVCTP_UUID);
@@ -285,8 +285,8 @@ static sdp_record_t *avrcp_ct_record(void)
 	/* Additional Protocol Descriptor List */
 	sdp_uuid16_create(&l2cap, L2CAP_UUID);
 	proto1[0] = sdp_list_append(0, &l2cap);
-	psm = sdp_data_alloc(SDP_UINT16, &ap);
-	proto1[0] = sdp_list_append(proto1[0], psm);
+	psm[1] = sdp_data_alloc(SDP_UINT16, &ap);
+	proto1[0] = sdp_list_append(proto1[0], psm[1]);
 	apseq1 = sdp_list_append(0, proto1[0]);
 
 	sdp_uuid16_create(&avctp, AVCTP_UUID);
@@ -308,13 +308,15 @@ static sdp_record_t *avrcp_ct_record(void)
 
 	sdp_set_info_attr(record, "AVRCP CT", 0, 0);
 
-	free(psm);
+	free(psm[0]);
+	free(psm[1]);
 	free(version);
 	sdp_list_free(proto[0], 0);
 	sdp_list_free(proto[1], 0);
 	sdp_list_free(apseq, 0);
 	sdp_list_free(proto1[0], 0);
 	sdp_list_free(proto1[1], 0);
+	sdp_list_free(aproto1, 0);
 	sdp_list_free(apseq1, 0);
 	sdp_list_free(pfseq, 0);
 	sdp_list_free(aproto, 0);