libavformat/nsvdec.c:349: error: Null Dereference
  pointer `nsv->nsvs_file_offset` last assigned on line 346 could be null and is dereferenced at line 349, column 13.

libavformat/nsvdec.c:267:1: start of procedure nsv_parse_NSVf_header()
265. }
266. 
267. static int nsv_parse_NSVf_header(AVFormatContext *s, AVFormatParameters *ap)
     ^
268. {
269.     NSVContext *nsv = s->priv_data;

libavformat/nsvdec.c:269:5: 
267. static int nsv_parse_NSVf_header(AVFormatContext *s, AVFormatParameters *ap)
268. {
269.     NSVContext *nsv = s->priv_data;
         ^
270.     AVIOContext *pb = s->pb;
271.     unsigned int av_unused file_size;

libavformat/nsvdec.c:270:5: 
268. {
269.     NSVContext *nsv = s->priv_data;
270.     AVIOContext *pb = s->pb;
         ^
271.     unsigned int av_unused file_size;
272.     unsigned int size;

libavformat/nsvdec.c:280:5: 
278.     av_dlog(s, "%s()\n", __FUNCTION__);
279. 
280.     nsv->state = NSV_UNSYNC; /* in case we fail */
         ^
281. 
282.     size = avio_rl32(pb);

libavformat/nsvdec.c:282:5: 
280.     nsv->state = NSV_UNSYNC; /* in case we fail */
281. 
282.     size = avio_rl32(pb);
         ^
283.     if (size < 28)
284.         return -1;

libavformat/aviobuf.c:706:1: start of procedure avio_rl32()
  704. }
  705. 
  706. unsigned int avio_rl32(AVIOContext *s)
       ^
  707. {
  708.     unsigned int val;

libavformat/aviobuf.c:709:5: 
  707. {
  708.     unsigned int val;
  709.     val = avio_rl16(s);
           ^
  710.     val |= avio_rl16(s) << 16;
  711.     return val;

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:710:5: 
  708.     unsigned int val;
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
           ^
  711.     return val;
  712. }

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:711:5: 
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
           ^
  712. }
  713. 

libavformat/aviobuf.c:712:1: return from a call to avio_rl32
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
  712. }
       ^
  713. 
  714. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:283:9: Taking false branch
281. 
282.     size = avio_rl32(pb);
283.     if (size < 28)
             ^
284.         return -1;
285.     nsv->NSVf_end = size;

libavformat/nsvdec.c:285:5: 
283.     if (size < 28)
284.         return -1;
285.     nsv->NSVf_end = size;
         ^
286. 
287.     //s->file_size = (uint32_t)avio_rl32(pb);

libavformat/nsvdec.c:288:5: 
286. 
287.     //s->file_size = (uint32_t)avio_rl32(pb);
288.     file_size = (uint32_t)avio_rl32(pb);
         ^
289.     av_dlog(s, "NSV NSVf chunk_size %u\n", size);
290.     av_dlog(s, "NSV NSVf file_size %u\n", file_size);

libavformat/aviobuf.c:706:1: start of procedure avio_rl32()
  704. }
  705. 
  706. unsigned int avio_rl32(AVIOContext *s)
       ^
  707. {
  708.     unsigned int val;

libavformat/aviobuf.c:709:5: 
  707. {
  708.     unsigned int val;
  709.     val = avio_rl16(s);
           ^
  710.     val |= avio_rl16(s) << 16;
  711.     return val;

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:710:5: 
  708.     unsigned int val;
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
           ^
  711.     return val;
  712. }

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:711:5: 
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
           ^
  712. }
  713. 

libavformat/aviobuf.c:712:1: return from a call to avio_rl32
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
  712. }
       ^
  713. 
  714. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:292:5: 
290.     av_dlog(s, "NSV NSVf file_size %u\n", file_size);
291. 
292.     nsv->duration = duration = avio_rl32(pb); /* in ms */
         ^
293.     av_dlog(s, "NSV NSVf duration %"PRId64" ms\n", duration);
294.     // XXX: store it in AVStreams

libavformat/aviobuf.c:706:1: start of procedure avio_rl32()
  704. }
  705. 
  706. unsigned int avio_rl32(AVIOContext *s)
       ^
  707. {
  708.     unsigned int val;

libavformat/aviobuf.c:709:5: 
  707. {
  708.     unsigned int val;
  709.     val = avio_rl16(s);
           ^
  710.     val |= avio_rl16(s) << 16;
  711.     return val;

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:710:5: 
  708.     unsigned int val;
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
           ^
  711.     return val;
  712. }

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:711:5: 
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
           ^
  712. }
  713. 

libavformat/aviobuf.c:712:1: return from a call to avio_rl32
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
  712. }
       ^
  713. 
  714. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:296:5: 
294.     // XXX: store it in AVStreams
295. 
296.     strings_size = avio_rl32(pb);
         ^
297.     table_entries = avio_rl32(pb);
298.     table_entries_used = avio_rl32(pb);

libavformat/aviobuf.c:706:1: start of procedure avio_rl32()
  704. }
  705. 
  706. unsigned int avio_rl32(AVIOContext *s)
       ^
  707. {
  708.     unsigned int val;

libavformat/aviobuf.c:709:5: 
  707. {
  708.     unsigned int val;
  709.     val = avio_rl16(s);
           ^
  710.     val |= avio_rl16(s) << 16;
  711.     return val;

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:710:5: 
  708.     unsigned int val;
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
           ^
  711.     return val;
  712. }

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:711:5: 
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
           ^
  712. }
  713. 

libavformat/aviobuf.c:712:1: return from a call to avio_rl32
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
  712. }
       ^
  713. 
  714. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:297:5: 
295. 
296.     strings_size = avio_rl32(pb);
297.     table_entries = avio_rl32(pb);
         ^
298.     table_entries_used = avio_rl32(pb);
299.     av_dlog(s, "NSV NSVf info-strings size: %d, table entries: %d, bis %d\n",

libavformat/aviobuf.c:706:1: start of procedure avio_rl32()
  704. }
  705. 
  706. unsigned int avio_rl32(AVIOContext *s)
       ^
  707. {
  708.     unsigned int val;

libavformat/aviobuf.c:709:5: 
  707. {
  708.     unsigned int val;
  709.     val = avio_rl16(s);
           ^
  710.     val |= avio_rl16(s) << 16;
  711.     return val;

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:710:5: 
  708.     unsigned int val;
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
           ^
  711.     return val;
  712. }

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:711:5: 
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
           ^
  712. }
  713. 

libavformat/aviobuf.c:712:1: return from a call to avio_rl32
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
  712. }
       ^
  713. 
  714. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:298:5: 
296.     strings_size = avio_rl32(pb);
297.     table_entries = avio_rl32(pb);
298.     table_entries_used = avio_rl32(pb);
         ^
299.     av_dlog(s, "NSV NSVf info-strings size: %d, table entries: %d, bis %d\n",
300.             strings_size, table_entries, table_entries_used);

libavformat/aviobuf.c:706:1: start of procedure avio_rl32()
  704. }
  705. 
  706. unsigned int avio_rl32(AVIOContext *s)
       ^
  707. {
  708.     unsigned int val;

libavformat/aviobuf.c:709:5: 
  707. {
  708.     unsigned int val;
  709.     val = avio_rl16(s);
           ^
  710.     val |= avio_rl16(s) << 16;
  711.     return val;

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:710:5: 
  708.     unsigned int val;
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
           ^
  711.     return val;
  712. }

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:711:5: 
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
           ^
  712. }
  713. 

libavformat/aviobuf.c:712:1: return from a call to avio_rl32
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
  712. }
       ^
  713. 
  714. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:301:9: Taking false branch
299.     av_dlog(s, "NSV NSVf info-strings size: %d, table entries: %d, bis %d\n",
300.             strings_size, table_entries, table_entries_used);
301.     if (pb->eof_reached)
             ^
302.         return -1;
303. 

libavformat/nsvdec.c:306:9: Taking false branch
304.     av_dlog(s, "NSV got header; filepos %"PRId64"\n", avio_tell(pb));
305. 
306.     if (strings_size > 0) {
             ^
307.         char *strings; /* last byte will be '\0' to play safe with str*() */
308.         char *p, *endp;

libavformat/nsvdec.c:336:9: Taking false branch
334.         av_free(strings);
335.     }
336.     if (pb->eof_reached)
             ^
337.         return -1;
338. 

libavformat/nsvdec.c:341:9: Taking true branch
339.     av_dlog(s, "NSV got infos; filepos %"PRId64"\n", avio_tell(pb));
340. 
341.     if (table_entries_used > 0) {
             ^
342.         int i;
343.         nsv->index_entries = table_entries_used;

libavformat/nsvdec.c:343:9: 
341.     if (table_entries_used > 0) {
342.         int i;
343.         nsv->index_entries = table_entries_used;
             ^
344.         if((unsigned)table_entries_used >= UINT_MAX / sizeof(uint32_t))
345.             return -1;

libavformat/nsvdec.c:344:12: Taking false branch
342.         int i;
343.         nsv->index_entries = table_entries_used;
344.         if((unsigned)table_entries_used >= UINT_MAX / sizeof(uint32_t))
                ^
345.             return -1;
346.         nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));

libavformat/nsvdec.c:346:9: 
344.         if((unsigned)table_entries_used >= UINT_MAX / sizeof(uint32_t))
345.             return -1;
346.         nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));
             ^
347. 
348.         for(i=0;i<table_entries_used;i++)

libavutil/mem.c:64:1: start of procedure av_malloc()
  62.    linker will do it automatically. */
  63. 
  64. void *av_malloc(size_t size)
      ^
  65. {
  66.     void *ptr = NULL;

libavutil/mem.c:66:5: 
  64. void *av_malloc(size_t size)
  65. {
  66.     void *ptr = NULL;
          ^
  67. #if CONFIG_MEMALIGN_HACK
  68.     long diff;

libavutil/mem.c:72:8: Taking true branch
  70. 
  71.     /* let's disallow possible ambiguous cases */
  72.     if(size > (INT_MAX-32) )
             ^
  73.         return NULL;
  74. 

libavutil/mem.c:73:9: 
  71.     /* let's disallow possible ambiguous cases */
  72.     if(size > (INT_MAX-32) )
  73.         return NULL;
              ^
  74. 
  75. #if CONFIG_MEMALIGN_HACK

libavutil/mem.c:115:1: return from a call to av_malloc
  113. #endif
  114.     return ptr;
  115. }
       ^
  116. 
  117. void *av_realloc(void *ptr, size_t size)

libavformat/nsvdec.c:348:13: 
346.         nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));
347. 
348.         for(i=0;i<table_entries_used;i++)
                 ^
349.             nsv->nsvs_file_offset[i] = avio_rl32(pb) + size;
350. 

libavformat/nsvdec.c:348:17: Loop condition is true. Entering loop body
346.         nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));
347. 
348.         for(i=0;i<table_entries_used;i++)
                     ^
349.             nsv->nsvs_file_offset[i] = avio_rl32(pb) + size;
350. 

libavformat/nsvdec.c:349:13: 
347. 
348.         for(i=0;i<table_entries_used;i++)
349.             nsv->nsvs_file_offset[i] = avio_rl32(pb) + size;
                 ^
350. 
351.         if(table_entries > table_entries_used &&

libavformat/aviobuf.c:706:1: start of procedure avio_rl32()
  704. }
  705. 
  706. unsigned int avio_rl32(AVIOContext *s)
       ^
  707. {
  708.     unsigned int val;

libavformat/aviobuf.c:709:5: 
  707. {
  708.     unsigned int val;
  709.     val = avio_rl16(s);
           ^
  710.     val |= avio_rl16(s) << 16;
  711.     return val;

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:710:5: 
  708.     unsigned int val;
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
           ^
  711.     return val;
  712. }

libavformat/aviobuf.c:690:1: start of procedure avio_rl16()
    688. }
    689. 
    690. unsigned int avio_rl16(AVIOContext *s)
         ^
    691. {
    692.     unsigned int val;

libavformat/aviobuf.c:693:5: 
    691. {
    692.     unsigned int val;
    693.     val = avio_r8(s);
             ^
    694.     val |= avio_r8(s) << 8;
    695.     return val;

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:694:5: 
    692.     unsigned int val;
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
             ^
    695.     return val;
    696. }

libavformat/aviobuf.c:600:1: start of procedure avio_r8()
      598. 
      599. /* XXX: put an inline version */
      600. int avio_r8(AVIOContext *s)
           ^
      601. {
      602.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:602:9: Taking false branch
      600. int avio_r8(AVIOContext *s)
      601. {
      602.     if (s->buf_ptr >= s->buf_end)
                   ^
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:604:9: Taking true branch
      602.     if (s->buf_ptr >= s->buf_end)
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
                   ^
      605.         return *s->buf_ptr++;
      606.     return 0;

libavformat/aviobuf.c:605:9: 
      603.         fill_buffer(s);
      604.     if (s->buf_ptr < s->buf_end)
      605.         return *s->buf_ptr++;
                   ^
      606.     return 0;
      607. }

libavformat/aviobuf.c:607:1: return from a call to avio_r8
      605.         return *s->buf_ptr++;
      606.     return 0;
      607. }
           ^
      608. 
      609. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:695:5: 
    693.     val = avio_r8(s);
    694.     val |= avio_r8(s) << 8;
    695.     return val;
             ^
    696. }
    697. 

libavformat/aviobuf.c:696:1: return from a call to avio_rl16
    694.     val |= avio_r8(s) << 8;
    695.     return val;
    696. }
         ^
    697. 
    698. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:711:5: 
  709.     val = avio_rl16(s);
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
           ^
  712. }
  713. 

libavformat/aviobuf.c:712:1: return from a call to avio_rl32
  710.     val |= avio_rl16(s) << 16;
  711.     return val;
  712. }
       ^
  713. 
  714. uint64_t avio_rl64(AVIOContext *s)

static int nsv_parse_NSVf_header(AVFormatContext *s, AVFormatParameters *ap)
{
    NSVContext *nsv = s->priv_data;
    AVIOContext *pb = s->pb;
    unsigned int av_unused file_size;
    unsigned int size;
    int64_t duration;
    int strings_size;
    int table_entries;
    int table_entries_used;
    av_dlog(s, "%s()\n", __FUNCTION__);
    nsv->state = NSV_UNSYNC;
    size = avio_rl32(pb);
    if (size < 28)
        return -1;
    nsv->NSVf_end = size;
    file_size = (uint32_t)avio_rl32(pb);
    av_dlog(s, "NSV NSVf chunk_size %u\n", size);
    av_dlog(s, "NSV NSVf file_size %u\n", file_size);
    nsv->duration = duration = avio_rl32(pb);
    av_dlog(s, "NSV NSVf duration %"PRId64" ms\n", duration);
    strings_size = avio_rl32(pb);
    table_entries = avio_rl32(pb);
    table_entries_used = avio_rl32(pb);
    av_dlog(s, "NSV NSVf info-strings size: %d, table entries: %d, bis %d\n",
            strings_size, table_entries, table_entries_used);
    if (pb->eof_reached)
        return -1;
    av_dlog(s, "NSV got header; filepos %"PRId64"\n", avio_tell(pb));
    if (strings_size > 0) {
        char *strings;
        char *p, *endp;
        char *token, *value;
        char quote;
        p = strings = av_mallocz(strings_size + 1);
        endp = strings + strings_size;
        avio_read(pb, strings, strings_size);
        while (p < endp) {
            while (*p == ' ')
                p++;
            if (p >= endp-2)
                break;
            token = p;
            p = strchr(p, '=');
            if (!p || p >= endp-2)
                break;
            *p++ = '\0';
            quote = *p++;
            value = p;
            p = strchr(p, quote);
            if (!p || p >= endp)
                break;
            *p++ = '\0';
            av_dlog(s, "NSV NSVf INFO: %s='%s'\n", token, value);
            av_dict_set(&s->metadata, token, value, 0);
        }
        av_free(strings);
    }
    if (pb->eof_reached)
        return -1;
    av_dlog(s, "NSV got infos; filepos %"PRId64"\n", avio_tell(pb));
    if (table_entries_used > 0) {
        int i;
        nsv->index_entries = table_entries_used;
        if((unsigned)table_entries_used >= UINT_MAX / sizeof(uint32_t))
            return -1;
        nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));
        for(i=0;i<table_entries_used;i++)
            nsv->nsvs_file_offset[i] = avio_rl32(pb) + size;
        if(table_entries > table_entries_used &&
           avio_rl32(pb) == MKTAG('T','O','C','2')) {
            nsv->nsvs_timestamps = av_malloc((unsigned)table_entries_used*sizeof(uint32_t));
            for(i=0;i<table_entries_used;i++) {
                nsv->nsvs_timestamps[i] = avio_rl32(pb);
            }
        }
    }
    av_dlog(s, "NSV got index; filepos %"PRId64"\n", avio_tell(pb));
#ifdef DEBUG_DUMP_INDEX
#define V(v) ((v<0x20 || v > 127)?'.':v)
    av_dlog(s, "NSV %d INDEX ENTRIES:\n", table_entries);
    av_dlog(s, "NSV [dataoffset][fileoffset]\n", table_entries);
    for (i = 0; i < table_entries; i++) {
        unsigned char b[8];
        avio_seek(pb, size + nsv->nsvs_file_offset[i], SEEK_SET);
        avio_read(pb, b, 8);
        av_dlog(s, "NSV [0x%08lx][0x%08lx]: %02x %02x %02x %02x %02x %02x %02x %02x"
           "%c%c%c%c%c%c%c%c\n",
           nsv->nsvs_file_offset[i], size + nsv->nsvs_file_offset[i],
           b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7],
           V(b[0]), V(b[1]), V(b[2]), V(b[3]), V(b[4]), V(b[5]), V(b[6]), V(b[7]) );
    }
#undef V
#endif
    avio_seek(pb, nsv->base_offset + size, SEEK_SET);
    if (pb->eof_reached)
        return -1;
    nsv->state = NSV_HAS_READ_NSVF;
    return 0;
}
['static int nsv_parse_NSVf_header(AVFormatContext *s, AVFormatParameters *ap)\n{\n    NSVContext *nsv = s->priv_data;\n    AVIOContext *pb = s->pb;\n    unsigned int av_unused file_size;\n    unsigned int size;\n    int64_t duration;\n    int strings_size;\n    int table_entries;\n    int table_entries_used;\n    av_dlog(s, "%s()\\n", __FUNCTION__);\n    nsv->state = NSV_UNSYNC;\n    size = avio_rl32(pb);\n    if (size < 28)\n        return -1;\n    nsv->NSVf_end = size;\n    file_size = (uint32_t)avio_rl32(pb);\n    av_dlog(s, "NSV NSVf chunk_size %u\\n", size);\n    av_dlog(s, "NSV NSVf file_size %u\\n", file_size);\n    nsv->duration = duration = avio_rl32(pb);\n    av_dlog(s, "NSV NSVf duration %"PRId64" ms\\n", duration);\n    strings_size = avio_rl32(pb);\n    table_entries = avio_rl32(pb);\n    table_entries_used = avio_rl32(pb);\n    av_dlog(s, "NSV NSVf info-strings size: %d, table entries: %d, bis %d\\n",\n            strings_size, table_entries, table_entries_used);\n    if (pb->eof_reached)\n        return -1;\n    av_dlog(s, "NSV got header; filepos %"PRId64"\\n", avio_tell(pb));\n    if (strings_size > 0) {\n        char *strings;\n        char *p, *endp;\n        char *token, *value;\n        char quote;\n        p = strings = av_mallocz(strings_size + 1);\n        endp = strings + strings_size;\n        avio_read(pb, strings, strings_size);\n        while (p < endp) {\n            while (*p == \' \')\n                p++;\n            if (p >= endp-2)\n                break;\n            token = p;\n            p = strchr(p, \'=\');\n            if (!p || p >= endp-2)\n                break;\n            *p++ = \'\\0\';\n            quote = *p++;\n            value = p;\n            p = strchr(p, quote);\n            if (!p || p >= endp)\n                break;\n            *p++ = \'\\0\';\n            av_dlog(s, "NSV NSVf INFO: %s=\'%s\'\\n", token, value);\n            av_dict_set(&s->metadata, token, value, 0);\n        }\n        av_free(strings);\n    }\n    if (pb->eof_reached)\n        return -1;\n    av_dlog(s, "NSV got infos; filepos %"PRId64"\\n", avio_tell(pb));\n    if (table_entries_used > 0) {\n        int i;\n        nsv->index_entries = table_entries_used;\n        if((unsigned)table_entries_used >= UINT_MAX / sizeof(uint32_t))\n            return -1;\n        nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));\n        for(i=0;i<table_entries_used;i++)\n            nsv->nsvs_file_offset[i] = avio_rl32(pb) + size;\n        if(table_entries > table_entries_used &&\n           avio_rl32(pb) == MKTAG(\'T\',\'O\',\'C\',\'2\')) {\n            nsv->nsvs_timestamps = av_malloc((unsigned)table_entries_used*sizeof(uint32_t));\n            for(i=0;i<table_entries_used;i++) {\n                nsv->nsvs_timestamps[i] = avio_rl32(pb);\n            }\n        }\n    }\n    av_dlog(s, "NSV got index; filepos %"PRId64"\\n", avio_tell(pb));\n#ifdef DEBUG_DUMP_INDEX\n#define V(v) ((v<0x20 || v > 127)?\'.\':v)\n    av_dlog(s, "NSV %d INDEX ENTRIES:\\n", table_entries);\n    av_dlog(s, "NSV [dataoffset][fileoffset]\\n", table_entries);\n    for (i = 0; i < table_entries; i++) {\n        unsigned char b[8];\n        avio_seek(pb, size + nsv->nsvs_file_offset[i], SEEK_SET);\n        avio_read(pb, b, 8);\n        av_dlog(s, "NSV [0x%08lx][0x%08lx]: %02x %02x %02x %02x %02x %02x %02x %02x"\n           "%c%c%c%c%c%c%c%c\\n",\n           nsv->nsvs_file_offset[i], size + nsv->nsvs_file_offset[i],\n           b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7],\n           V(b[0]), V(b[1]), V(b[2]), V(b[3]), V(b[4]), V(b[5]), V(b[6]), V(b[7]) );\n    }\n#undef V\n#endif\n    avio_seek(pb, nsv->base_offset + size, SEEK_SET);\n    if (pb->eof_reached)\n        return -1;\n    nsv->state = NSV_HAS_READ_NSVF;\n    return 0;\n}', 'unsigned int avio_rl32(AVIOContext *s)\n{\n    unsigned int val;\n    val = avio_rl16(s);\n    val |= avio_rl16(s) << 16;\n    return val;\n}', 'unsigned int avio_rl16(AVIOContext *s)\n{\n    unsigned int val;\n    val = avio_r8(s);\n    val |= avio_r8(s) << 8;\n    return val;\n}', 'int avio_r8(AVIOContext *s)\n{\n    if (s->buf_ptr >= s->buf_end)\n        fill_buffer(s);\n    if (s->buf_ptr < s->buf_end)\n        return *s->buf_ptr++;\n    return 0;\n}', 'void *av_malloc(size_t size)\n{\n    void *ptr = NULL;\n#if CONFIG_MEMALIGN_HACK\n    long diff;\n#endif\n    if(size > (INT_MAX-32) )\n        return NULL;\n#if CONFIG_MEMALIGN_HACK\n    ptr = malloc(size+32);\n    if(!ptr)\n        return ptr;\n    diff= ((-(long)ptr - 1)&31) + 1;\n    ptr = (char*)ptr + diff;\n    ((char*)ptr)[-1]= diff;\n#elif HAVE_POSIX_MEMALIGN\n    if (posix_memalign(&ptr,32,size))\n        ptr = NULL;\n#elif HAVE_MEMALIGN\n    ptr = memalign(32,size);\n#else\n    ptr = malloc(size);\n#endif\n    return ptr;\n}']