libavcodec/aac.c:1623: error: Null Dereference
  pointer `&gb->buffer` last assigned on line 1621 could be null and is dereferenced by call to `show_bits()` at line 1623, column 9.

libavcodec/aac.c:1614:1: start of procedure aac_decode_frame()
1612. }
1613. 
1614. static int aac_decode_frame(AVCodecContext * avccontext, void * data, int * data_size, const uint8_t * buf, int buf_size) {
      ^
1615.     AACContext * ac = avccontext->priv_data;
1616.     ChannelElement * che = NULL;

libavcodec/aac.c:1615:5: 
1613. 
1614. static int aac_decode_frame(AVCodecContext * avccontext, void * data, int * data_size, const uint8_t * buf, int buf_size) {
1615.     AACContext * ac = avccontext->priv_data;
          ^
1616.     ChannelElement * che = NULL;
1617.     GetBitContext gb;

libavcodec/aac.c:1616:5: 
1614. static int aac_decode_frame(AVCodecContext * avccontext, void * data, int * data_size, const uint8_t * buf, int buf_size) {
1615.     AACContext * ac = avccontext->priv_data;
1616.     ChannelElement * che = NULL;
          ^
1617.     GetBitContext gb;
1618.     enum RawDataBlockType elem_type;

libavcodec/aac.c:1621:5: 
1619.     int err, elem_id, data_size_tmp;
1620. 
1621.     init_get_bits(&gb, buf, buf_size*8);
          ^
1622. 
1623.     if (show_bits(&gb, 12) == 0xfff) {

libavcodec/bitstream.h:743:1: start of procedure init_get_bits()
  741.  * @param bit_size the size of the buffer in bits
  742.  */
  743. static inline void init_get_bits(GetBitContext *s,
       ^
  744.                    const uint8_t *buffer, int bit_size)
  745. {

libavcodec/bitstream.h:746:5: 
  744.                    const uint8_t *buffer, int bit_size)
  745. {
  746.     int buffer_size= (bit_size+7)>>3;
           ^
  747.     if(buffer_size < 0 || bit_size < 0) {
  748.         buffer_size = bit_size = 0;

libavcodec/bitstream.h:747:8: Taking true branch
  745. {
  746.     int buffer_size= (bit_size+7)>>3;
  747.     if(buffer_size < 0 || bit_size < 0) {
              ^
  748.         buffer_size = bit_size = 0;
  749.         buffer = NULL;

libavcodec/bitstream.h:748:9: 
  746.     int buffer_size= (bit_size+7)>>3;
  747.     if(buffer_size < 0 || bit_size < 0) {
  748.         buffer_size = bit_size = 0;
               ^
  749.         buffer = NULL;
  750.     }

libavcodec/bitstream.h:749:9: 
  747.     if(buffer_size < 0 || bit_size < 0) {
  748.         buffer_size = bit_size = 0;
  749.         buffer = NULL;
               ^
  750.     }
  751. 

libavcodec/bitstream.h:752:5: 
  750.     }
  751. 
  752.     s->buffer= buffer;
           ^
  753.     s->size_in_bits= bit_size;
  754.     s->buffer_end= buffer + buffer_size;

libavcodec/bitstream.h:753:5: 
  751. 
  752.     s->buffer= buffer;
  753.     s->size_in_bits= bit_size;
           ^
  754.     s->buffer_end= buffer + buffer_size;
  755. #ifdef ALT_BITSTREAM_READER

libavcodec/bitstream.h:754:5: 
  752.     s->buffer= buffer;
  753.     s->size_in_bits= bit_size;
  754.     s->buffer_end= buffer + buffer_size;
           ^
  755. #ifdef ALT_BITSTREAM_READER
  756.     s->index=0;

libavcodec/bitstream.h:756:5: 
  754.     s->buffer_end= buffer + buffer_size;
  755. #ifdef ALT_BITSTREAM_READER
  756.     s->index=0;
           ^
  757. #elif defined LIBMPEG2_BITSTREAM_READER
  758.     s->buffer_ptr = (uint8_t*)((intptr_t)buffer&(~1));

libavcodec/bitstream.h:766:1: return from a call to init_get_bits
  764.     skip_bits_long(s, 0);
  765. #endif
  766. }
       ^
  767. 
  768. static inline void align_get_bits(GetBitContext *s)

libavcodec/aac.c:1623:9: 
1621.     init_get_bits(&gb, buf, buf_size*8);
1622. 
1623.     if (show_bits(&gb, 12) == 0xfff) {
              ^
1624.         if ((err = parse_adts_frame_header(ac, &gb)) < 0) {
1625.             av_log(avccontext, AV_LOG_ERROR, "Error decoding AAC frame header.\n");

libavcodec/bitstream.h:649:1: start of procedure show_bits()
  647.  * Note, the alt bitstream reader can read up to 25 bits, but the libmpeg2 reader can't
  648.  */
  649. static inline unsigned int show_bits(GetBitContext *s, int n){
       ^
  650.     register int tmp;
  651.     OPEN_READER(re, s)

libavcodec/bitstream.h:651:5: 
  649. static inline unsigned int show_bits(GetBitContext *s, int n){
  650.     register int tmp;
  651.     OPEN_READER(re, s)
           ^
  652.     UPDATE_CACHE(re, s)
  653.     tmp= SHOW_UBITS(re, s, n);

libavcodec/bitstream.h:652:5: 
  650.     register int tmp;
  651.     OPEN_READER(re, s)
  652.     UPDATE_CACHE(re, s)
           ^
  653.     tmp= SHOW_UBITS(re, s, n);
  654. //    CLOSE_READER(re, s)
