libavcodec/png_parser.c:86: error: Integer Overflow L2
  ([-oo, 2147483647] + 4):signed32.

libavcodec/png_parser.c:79:9: <LHS trace>
77. 
78.     for (; ppc->pc.frame_start_found && i < buf_size; i++) {
79.         ppc->pc.state = (ppc->pc.state << 8) | buf[i];
            ^
80.         if (ppc->chunk_pos == 3) {
81.             ppc->chunk_length = ppc->pc.state;

libavcodec/png_parser.c:79:9: Assignment
77. 
78.     for (; ppc->pc.frame_start_found && i < buf_size; i++) {
79.         ppc->pc.state = (ppc->pc.state << 8) | buf[i];
            ^
80.         if (ppc->chunk_pos == 3) {
81.             ppc->chunk_length = ppc->pc.state;

libavcodec/png_parser.c:79:9: Assignment
77. 
78.     for (; ppc->pc.frame_start_found && i < buf_size; i++) {
79.         ppc->pc.state = (ppc->pc.state << 8) | buf[i];
            ^
80.         if (ppc->chunk_pos == 3) {
81.             ppc->chunk_length = ppc->pc.state;

libavcodec/png_parser.c:81:13: Assignment
79.         ppc->pc.state = (ppc->pc.state << 8) | buf[i];
80.         if (ppc->chunk_pos == 3) {
81.             ppc->chunk_length = ppc->pc.state;
                ^
82.             if (ppc->chunk_length > 0x7fffffff) {
83.                 ppc->chunk_pos = ppc->pc.frame_start_found = 0;

libavcodec/png_parser.c:86:13: Binary operation: ([-oo, 2147483647] + 4):signed32
84.                 goto flush;
85.             }
86.             ppc->chunk_length += 4;
                ^
87.         } else if (ppc->chunk_pos == 7) {
88.             if (ppc->chunk_length >= buf_size - i)
