diff --git a/components/bt/bluedroid/gki/gki_buffer.c b/components/bt/bluedroid/gki/gki_buffer.c index 29ac5b43e7..7a6031adc6 100755 --- a/components/bt/bluedroid/gki/gki_buffer.c +++ b/components/bt/bluedroid/gki/gki_buffer.c @@ -196,12 +196,17 @@ void GKI_init_q (BUFFER_Q *p_q) void *GKI_getbuf (UINT16 size) { BUFFER_HDR_T *header = osi_malloc(size + BUFFER_HDR_SIZE); - header->status = BUF_STATUS_UNLINKED; - header->p_next = NULL; - header->Type = 0; - header->size = size; + assert(header != NULL); + if (header != NULL) { + header->status = BUF_STATUS_UNLINKED; + header->p_next = NULL; + header->Type = 0; + header->size = size; - return header + 1; + return header + 1; + } else { + return NULL; + } }