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

libavformat/nsvdec.c:272:1: start of procedure nsv_parse_NSVf_header()
270. }
271. 
272. static int nsv_parse_NSVf_header(AVFormatContext *s, AVFormatParameters *ap)
     ^
273. {
274.     NSVContext *nsv = s->priv_data;

libavformat/nsvdec.c:274:5: 
272. static int nsv_parse_NSVf_header(AVFormatContext *s, AVFormatParameters *ap)
273. {
274.     NSVContext *nsv = s->priv_data;
         ^
275.     AVIOContext *pb = s->pb;
276.     unsigned int av_unused file_size;

libavformat/nsvdec.c:275:5: 
273. {
274.     NSVContext *nsv = s->priv_data;
275.     AVIOContext *pb = s->pb;
         ^
276.     unsigned int av_unused file_size;
277.     unsigned int size;

libavformat/nsvdec.c:285:5: 
283.     av_dlog(s, "%s()\n", __FUNCTION__);
284. 
285.     nsv->state = NSV_UNSYNC; /* in case we fail */
         ^
286. 
287.     size = avio_rl32(pb);

libavformat/nsvdec.c:287:5: 
285.     nsv->state = NSV_UNSYNC; /* in case we fail */
286. 
287.     size = avio_rl32(pb);
         ^
288.     if (size < 28)
289.         return -1;

libavformat/aviobuf.c:734:1: start of procedure avio_rl32()
  732. }
  733. 
  734. unsigned int avio_rl32(AVIOContext *s)
       ^
  735. {
  736.     unsigned int val;

libavformat/aviobuf.c:737:5: 
  735. {
  736.     unsigned int val;
  737.     val = avio_rl16(s);
           ^
  738.     val |= avio_rl16(s) << 16;
  739.     return val;

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:738:5: 
  736.     unsigned int val;
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
           ^
  739.     return val;
  740. }

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:739:5: 
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
           ^
  740. }
  741. 

libavformat/aviobuf.c:740:1: return from a call to avio_rl32
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
  740. }
       ^
  741. 
  742. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:288:9: Taking false branch
286. 
287.     size = avio_rl32(pb);
288.     if (size < 28)
             ^
289.         return -1;
290.     nsv->NSVf_end = size;

libavformat/nsvdec.c:290:5: 
288.     if (size < 28)
289.         return -1;
290.     nsv->NSVf_end = size;
         ^
291. 
292.     //s->file_size = (uint32_t)avio_rl32(pb);

libavformat/nsvdec.c:293:5: 
291. 
292.     //s->file_size = (uint32_t)avio_rl32(pb);
293.     file_size = (uint32_t)avio_rl32(pb);
         ^
294.     av_dlog(s, "NSV NSVf chunk_size %u\n", size);
295.     av_dlog(s, "NSV NSVf file_size %u\n", file_size);

libavformat/aviobuf.c:734:1: start of procedure avio_rl32()
  732. }
  733. 
  734. unsigned int avio_rl32(AVIOContext *s)
       ^
  735. {
  736.     unsigned int val;

libavformat/aviobuf.c:737:5: 
  735. {
  736.     unsigned int val;
  737.     val = avio_rl16(s);
           ^
  738.     val |= avio_rl16(s) << 16;
  739.     return val;

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:738:5: 
  736.     unsigned int val;
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
           ^
  739.     return val;
  740. }

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:739:5: 
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
           ^
  740. }
  741. 

libavformat/aviobuf.c:740:1: return from a call to avio_rl32
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
  740. }
       ^
  741. 
  742. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:297:5: 
295.     av_dlog(s, "NSV NSVf file_size %u\n", file_size);
296. 
297.     nsv->duration = duration = avio_rl32(pb); /* in ms */
         ^
298.     av_dlog(s, "NSV NSVf duration %"PRId64" ms\n", duration);
299.     // XXX: store it in AVStreams

libavformat/aviobuf.c:734:1: start of procedure avio_rl32()
  732. }
  733. 
  734. unsigned int avio_rl32(AVIOContext *s)
       ^
  735. {
  736.     unsigned int val;

libavformat/aviobuf.c:737:5: 
  735. {
  736.     unsigned int val;
  737.     val = avio_rl16(s);
           ^
  738.     val |= avio_rl16(s) << 16;
  739.     return val;

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:738:5: 
  736.     unsigned int val;
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
           ^
  739.     return val;
  740. }

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:739:5: 
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
           ^
  740. }
  741. 

libavformat/aviobuf.c:740:1: return from a call to avio_rl32
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
  740. }
       ^
  741. 
  742. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:301:5: 
299.     // XXX: store it in AVStreams
300. 
301.     strings_size = avio_rl32(pb);
         ^
302.     table_entries = avio_rl32(pb);
303.     table_entries_used = avio_rl32(pb);

libavformat/aviobuf.c:734:1: start of procedure avio_rl32()
  732. }
  733. 
  734. unsigned int avio_rl32(AVIOContext *s)
       ^
  735. {
  736.     unsigned int val;

libavformat/aviobuf.c:737:5: 
  735. {
  736.     unsigned int val;
  737.     val = avio_rl16(s);
           ^
  738.     val |= avio_rl16(s) << 16;
  739.     return val;

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:738:5: 
  736.     unsigned int val;
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
           ^
  739.     return val;
  740. }

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:739:5: 
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
           ^
  740. }
  741. 

libavformat/aviobuf.c:740:1: return from a call to avio_rl32
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
  740. }
       ^
  741. 
  742. uint64_t avio_rl64(AVIOContext *s)

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

libavformat/aviobuf.c:734:1: start of procedure avio_rl32()
  732. }
  733. 
  734. unsigned int avio_rl32(AVIOContext *s)
       ^
  735. {
  736.     unsigned int val;

libavformat/aviobuf.c:737:5: 
  735. {
  736.     unsigned int val;
  737.     val = avio_rl16(s);
           ^
  738.     val |= avio_rl16(s) << 16;
  739.     return val;

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:738:5: 
  736.     unsigned int val;
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
           ^
  739.     return val;
  740. }

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:739:5: 
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
           ^
  740. }
  741. 

libavformat/aviobuf.c:740:1: return from a call to avio_rl32
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
  740. }
       ^
  741. 
  742. uint64_t avio_rl64(AVIOContext *s)

libavformat/nsvdec.c:303:5: 
301.     strings_size = avio_rl32(pb);
302.     table_entries = avio_rl32(pb);
303.     table_entries_used = avio_rl32(pb);
         ^
304.     av_dlog(s, "NSV NSVf info-strings size: %d, table entries: %d, bis %d\n",
305.             strings_size, table_entries, table_entries_used);

libavformat/aviobuf.c:734:1: start of procedure avio_rl32()
  732. }
  733. 
  734. unsigned int avio_rl32(AVIOContext *s)
       ^
  735. {
  736.     unsigned int val;

libavformat/aviobuf.c:737:5: 
  735. {
  736.     unsigned int val;
  737.     val = avio_rl16(s);
           ^
  738.     val |= avio_rl16(s) << 16;
  739.     return val;

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:738:5: 
  736.     unsigned int val;
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
           ^
  739.     return val;
  740. }

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:739:5: 
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
           ^
  740. }
  741. 

libavformat/aviobuf.c:740:1: return from a call to avio_rl32
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
  740. }
       ^
  741. 
  742. uint64_t avio_rl64(AVIOContext *s)

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

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

libavformat/nsvdec.c:341:9: Taking false branch
339.         av_free(strings);
340.     }
341.     if (pb->eof_reached)
             ^
342.         return -1;
343. 

libavformat/nsvdec.c:346:9: Taking true branch
344.     av_dlog(s, "NSV got infos; filepos %"PRId64"\n", avio_tell(pb));
345. 
346.     if (table_entries_used > 0) {
             ^
347.         int i;
348.         nsv->index_entries = table_entries_used;

libavformat/nsvdec.c:348:9: 
346.     if (table_entries_used > 0) {
347.         int i;
348.         nsv->index_entries = table_entries_used;
             ^
349.         if((unsigned)table_entries_used >= UINT_MAX / sizeof(uint32_t))
350.             return -1;

libavformat/nsvdec.c:349:12: Taking false branch
347.         int i;
348.         nsv->index_entries = table_entries_used;
349.         if((unsigned)table_entries_used >= UINT_MAX / sizeof(uint32_t))
                ^
350.             return -1;
351.         nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));

libavformat/nsvdec.c:351:9: 
349.         if((unsigned)table_entries_used >= UINT_MAX / sizeof(uint32_t))
350.             return -1;
351.         nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));
             ^
352. 
353.         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:353:13: 
351.         nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));
352. 
353.         for(i=0;i<table_entries_used;i++)
                 ^
354.             nsv->nsvs_file_offset[i] = avio_rl32(pb) + size;
355. 

libavformat/nsvdec.c:353:17: Loop condition is true. Entering loop body
351.         nsv->nsvs_file_offset = av_malloc((unsigned)table_entries_used * sizeof(uint32_t));
352. 
353.         for(i=0;i<table_entries_used;i++)
                     ^
354.             nsv->nsvs_file_offset[i] = avio_rl32(pb) + size;
355. 

libavformat/nsvdec.c:354:13: 
352. 
353.         for(i=0;i<table_entries_used;i++)
354.             nsv->nsvs_file_offset[i] = avio_rl32(pb) + size;
                 ^
355. 
356.         if(table_entries > table_entries_used &&

libavformat/aviobuf.c:734:1: start of procedure avio_rl32()
  732. }
  733. 
  734. unsigned int avio_rl32(AVIOContext *s)
       ^
  735. {
  736.     unsigned int val;

libavformat/aviobuf.c:737:5: 
  735. {
  736.     unsigned int val;
  737.     val = avio_rl16(s);
           ^
  738.     val |= avio_rl16(s) << 16;
  739.     return val;

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:738:5: 
  736.     unsigned int val;
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
           ^
  739.     return val;
  740. }

libavformat/aviobuf.c:718:1: start of procedure avio_rl16()
    716. }
    717. 
    718. unsigned int avio_rl16(AVIOContext *s)
         ^
    719. {
    720.     unsigned int val;

libavformat/aviobuf.c:721:5: 
    719. {
    720.     unsigned int val;
    721.     val = avio_r8(s);
             ^
    722.     val |= avio_r8(s) << 8;
    723.     return val;

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:722:5: 
    720.     unsigned int val;
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
             ^
    723.     return val;
    724. }

libavformat/aviobuf.c:628:1: start of procedure avio_r8()
      626. 
      627. /* XXX: put an inline version */
      628. int avio_r8(AVIOContext *s)
           ^
      629. {
      630.     if (s->buf_ptr >= s->buf_end)

libavformat/aviobuf.c:630:9: Taking false branch
      628. int avio_r8(AVIOContext *s)
      629. {
      630.     if (s->buf_ptr >= s->buf_end)
                   ^
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)

libavformat/aviobuf.c:632:9: Taking true branch
      630.     if (s->buf_ptr >= s->buf_end)
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
                   ^
      633.         return *s->buf_ptr++;
      634.     return 0;

libavformat/aviobuf.c:633:9: 
      631.         fill_buffer(s);
      632.     if (s->buf_ptr < s->buf_end)
      633.         return *s->buf_ptr++;
                   ^
      634.     return 0;
      635. }

libavformat/aviobuf.c:635:1: return from a call to avio_r8
      633.         return *s->buf_ptr++;
      634.     return 0;
      635. }
           ^
      636. 
      637. #if FF_API_OLD_AVIO

libavformat/aviobuf.c:723:5: 
    721.     val = avio_r8(s);
    722.     val |= avio_r8(s) << 8;
    723.     return val;
             ^
    724. }
    725. 

libavformat/aviobuf.c:724:1: return from a call to avio_rl16
    722.     val |= avio_r8(s) << 8;
    723.     return val;
    724. }
         ^
    725. 
    726. unsigned int avio_rl24(AVIOContext *s)

libavformat/aviobuf.c:739:5: 
  737.     val = avio_rl16(s);
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
           ^
  740. }
  741. 

libavformat/aviobuf.c:740:1: return from a call to avio_rl32
  738.     val |= avio_rl16(s) << 16;
  739.     return val;
  740. }
       ^
  741. 
  742. 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}']