Opened 8 years ago
Closed 7 years ago
#7666 closed defect (fixed)
Signed integer overflow when converting to ya16
| Reported by: | Carl Eugen Hoyos | Owned by: | |
|---|---|---|---|
| Priority: | important | Component: | swscale |
| Version: | git-master | Keywords: | ubsan |
| Cc: | Blocked By: | ||
| Blocking: | Reproduced by developer: | no | |
| Analyzed by developer: | no |
Description
$ make tests/vsynth1/00.pgm
$ ffmpeg -vcodec pgmyuv -i tests/vsynth1/%02d.pgm -pix_fmt ya16le -f null -
ffmpeg version N-92942-g02b6d1d Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 6.4.0 (GCC)
configuration: --enable-gpl --toolchain=gcc-usan
libavutil 56. 25.100 / 56. 25.100
libavcodec 58. 43.100 / 58. 43.100
libavformat 58. 25.100 / 58. 25.100
libavdevice 58. 6.101 / 58. 6.101
libavfilter 7. 47.100 / 7. 47.100
libswscale 5. 4.100 / 5. 4.100
libswresample 3. 4.100 / 3. 4.100
libpostproc 55. 4.100 / 55. 4.100
Input #0, image2, from 'tests/vsynth1/%02d.pgm':
Duration: 00:00:02.00, start: 0.000000, bitrate: N/A
Stream #0:0: Video: pgmyuv, yuv420p, 352x288, 25 fps, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (pgmyuv (native) -> wrapped_avframe (native))
Press [q] to stop, [?] for help
libswscale/output.c:920:15: runtime error: signed integer overflow: 2147311616 + 262144 cannot be represented in type 'int'
Output #0, null, to 'pipe:':
Metadata:
encoder : Lavf58.25.100
Stream #0:0: Video: wrapped_avframe, ya16le, 352x288, q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc58.43.100 wrapped_avframe
frame= 50 fps=0.0 q=-0.0 Lsize=N/A time=00:00:02.00 bitrate=N/A speed=28.2x
video:26kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Tested on x86_64, same error with --enable-ftrapv
Note:
See TracTickets
for help on using tickets.



Fixed in 21838cad2fc44023ad85e35d5c677e2f8d29a0ef.