summaryrefslogtreecommitdiffstats
path: root/stack/sdp/sdp_server.c
diff options
context:
space:
mode:
Diffstat (limited to 'stack/sdp/sdp_server.c')
-rw-r--r--stack/sdp/sdp_server.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/stack/sdp/sdp_server.c b/stack/sdp/sdp_server.c
index 73715fc8f..b93ea7863 100644
--- a/stack/sdp/sdp_server.c
+++ b/stack/sdp/sdp_server.c
@@ -30,6 +30,7 @@
#include "gki.h"
#include "bt_types.h"
#include "bt_utils.h"
+#include "bt_trace.h"
#include "btu.h"
#include "l2cdefs.h"
@@ -963,8 +964,15 @@ static void process_service_search_attr_req (tCONN_CB *p_ccb, UINT16 trans_num,
seq_len = sdpu_get_attrib_seq_len(p_rec, &attr_seq_sav);
if (seq_len != 0)
{
- UINT8_TO_BE_STREAM (p_seq_start, (DATA_ELE_SEQ_DESC_TYPE << 3) | SIZE_IN_NEXT_WORD);
- UINT16_TO_BE_STREAM (p_seq_start, seq_len);
+ if (p_seq_start)
+ {
+ UINT8_TO_BE_STREAM (p_seq_start, (DATA_ELE_SEQ_DESC_TYPE << 3) | SIZE_IN_NEXT_WORD);
+ UINT16_TO_BE_STREAM (p_seq_start, seq_len);
+ }
+ else
+ {
+ SDP_TRACE_DEBUG("SDP service and attribute rsp: Attribute sequence p_seq_start is NULL");
+ }
if (maxxed_out)
p_ccb->cont_info.last_attr_seq_desc_sent = TRUE;