Diff between de43400a1e53dfa4434f50f4d41a2c13517cd875 and d52e7dd260a9201e40abd261b6dcdd60d9c20f26

Changed Files

File Additions Deletions Status
lib/sdp.c +6 -2 modified

Full Patch

diff --git a/lib/sdp.c b/lib/sdp.c
index 155eca5..eb408a9 100644
--- a/lib/sdp.c
+++ b/lib/sdp.c
@@ -932,8 +932,12 @@ int sdp_gen_record_pdu(const sdp_record_t *rec, sdp_buf_t *buf)
 
 void sdp_attr_replace(sdp_record_t *rec, uint16_t attr, sdp_data_t *d)
 {
-	sdp_data_t *p = sdp_data_get(rec, attr);
+	sdp_data_t *p;
+
+	if (!rec)
+		return;
 
+	p = sdp_data_get(rec, attr);
 	if (p) {
 		rec->attrlist = sdp_list_remove(rec->attrlist, p);
 		sdp_data_free(p);
@@ -1667,7 +1671,7 @@ void sdp_data_print(sdp_data_t *d)
 
 sdp_data_t *sdp_data_get(const sdp_record_t *rec, uint16_t attrId)
 {
-	if (rec->attrlist) {
+	if (rec && rec->attrlist) {
 		sdp_data_t sdpTemplate;
 		sdp_list_t *p;