Luca Barbato
4ecdb5ed44
qdm2: Conceal broken samples
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 15:57:46 +02:00
Luca Barbato
adadc3f244
qdm2: refactor joined stereo support
...
qdm2 does support only two channels. Loop over the run once.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 15:57:32 +02:00
Luca Barbato
12576afe20
adpcm: Write the correct number of samples for ima-dk4
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Luca Barbato
bbf6a4aa20
imc: Catch a division by zero
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Luca Barbato
50cf5a7fb7
atrac3: Error on impossible encoding/channel combinations
...
Joint stereo encoded mono is impossible.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Luca Barbato
22e76ec635
atrac3: set the getbits context the right buffer_end
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Luca Barbato
874c8a17ac
atrac3: fix error handling
...
decode_tonal_components returns a proper AVERROR.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-09 10:49:29 +02:00
Luca Barbato
744a11c996
qdm2: check and reset dithering index per channel
...
Checking per subband would have the index exceed the
dithering noise table size.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-07 22:06:35 +02:00
Luca Barbato
76efedeadb
qdm2: formatting cosmetics
...
Apply the usual style plus drop few unnecessary return at the end
of void functions.
2013-07-07 22:06:28 +02:00
Luca Barbato
f054e309c5
qdm2: use init_static_data
2013-07-07 22:06:20 +02:00
Luca Barbato
76f5dfbfd9
westwood_vqa: do not free extradata on error in read_header
...
The extradata is already freed by avformat_open_input on
failure.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-07 22:04:43 +02:00
Luca Barbato
c4abc9098c
vqavideo: check the version
...
Prevent out of buffer write.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-07 22:04:05 +02:00
Luca Barbato
636ced8e1d
cmdutils: wrap exit explicitly
...
Some C runtime implementations deadlock when calling threading functions
on the atexit() handler.
Use a simpler wrapper similar to av_log to call the cleanup function
before exit.
Bug-Id: 523
2013-07-07 21:43:23 +02:00
Luca Barbato
f5e646a00a
wtv: Mark attachment with a negative stream id
...
A sid 0 would be mismatched to the attachment.
Prevent NULL pointer dereference.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-07 04:28:51 +02:00
Luca Barbato
a4baf96abd
avprobe: rename the prettyprint structures
2013-07-07 04:28:51 +02:00
Luca Barbato
73142e7533
fifo: K&R formatting cosmetics
2013-07-06 14:28:06 +02:00
Luca Barbato
4e7f0b082d
kmvc: Clip pixel position to valid range
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-06 14:12:45 +02:00
Luca Barbato
8f68977054
kmvc: use fixed sized arrays in the context
...
Avoid some boilerplate code to dynamically allocate and then free the
buffers.
2013-07-06 14:12:42 +02:00
Luca Barbato
4972e5a186
bitstream_filter: K&R formatting cosmetics
2013-07-05 19:38:24 +02:00
Luca Barbato
d3635f3ab0
compat: wrap math.h to avoid AIX-specific clashes
...
AIX defines a class() function in its math.h header without any
guard.
2013-07-04 21:54:32 +02:00
Luca Barbato
0420c810ce
log: pass the correct parameters to missing_feature_sample
...
CC:libav-stable@libav.org
2013-07-04 21:25:11 +02:00
Luca Barbato
6a10142faa
indeo: reject negative array indexes
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-04 16:06:11 +02:00
Luca Barbato
6dfacd7ab1
indeo: Cosmetic formatting
...
Trim some overly long lines.
2013-07-04 16:06:10 +02:00
Luca Barbato
62256010e9
indeo: Refactor ff_ivi_init_tiles and ivi_decode_blocks
...
Spin large and mostly self contained blocks into stand alone
functions.
2013-07-04 16:06:10 +02:00
Luca Barbato
f6f36ca8ca
indeo: Refactor ff_ivi_dec_huff_desc
...
Spare an indentation level.
2013-07-04 16:06:10 +02:00
Luca Barbato
e6d8acf6a8
indeo: use a typedef for the mc function pointer
2013-07-04 16:06:10 +02:00
Luca Barbato
daeb4e3042
jpeg2000: Proper cleanup on failure in decode_frame()
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2013-07-02 20:05:47 +02:00
Luca Barbato
7e201d575d
jpeg2000: Validate block lengthinc
...
Currently we are using an array with a static data size.
Similar to a patch with the same purpose by Michael Niedermayer.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2013-07-02 20:05:44 +02:00
Luca Barbato
5efadcb8cd
jpeg2000: Clean up return paths and error messages
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2013-07-02 20:05:43 +02:00
Luca Barbato
be3271009e
jpeg2000: Define the maximum decomposition levels
...
And define the resolution levels according.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2013-07-02 20:05:43 +02:00
Luca Barbato
5650e331a7
jpeg2000: Validate resolution levels
...
There are 32 maximum decomposition levels, thus 33 resolution levels.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2013-07-02 20:05:43 +02:00
Luca Barbato
8bd9039900
Revert "indeo5: reject negative motion vectors"
...
Negative motion vectors are possible.
This reverts commit 1194a41080 .
2013-07-01 06:49:46 +02:00
Luca Barbato
b36e1893ef
indeo: check for reference when inheriting mvs
...
The same is done already for qdelta.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-01 04:20:58 +02:00
Luca Barbato
1194a41080
indeo5: reject negative motion vectors
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-01 04:20:51 +02:00
Luca Barbato
dd3754a488
indeo: use proper error code
2013-07-01 04:17:46 +02:00
Luca Barbato
7388c0c586
indeo: Properly forward the error codes
...
If the tile data size does not match the buffer size it did not
return an AVERROR_INVALIDDATA causing futher corruption later.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-07-01 04:17:46 +02:00
Luca Barbato
6765ee7b9c
mjpeg: Check the unescaped size for overflows
...
And contextually check init_get_bits success and fix the reporting
message.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-30 08:48:51 +02:00
Luca Barbato
7520d9779c
mjpeg: Move code out of else branch
...
Simplify the control flow and spare some vertical space.
2013-06-30 08:46:55 +02:00
Luca Barbato
02ec656af7
wmapro: error out on impossible scale factor offsets
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-29 18:11:59 +02:00
Luca Barbato
d4a217a408
wmapro: check the min_samples_per_subframe
...
Must be at least WMAPRO_BLOCK_MIN_SIZE.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-29 18:11:40 +02:00
Luca Barbato
183880cfc4
pictor: use the correct logging context
...
Broken in 6d97484d72
2013-06-29 18:11:12 +02:00
Luca Barbato
3822936252
wmapro: check num_vec_coeffs against the actual available buffer
...
Prevent yet another buffer overwrite.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-28 13:16:35 +02:00
Luca Barbato
6652338f43
wmapro: return early on unsupported condition
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-28 13:16:00 +02:00
Luca Barbato
e30b068ef7
wmapro: make sure there is room to store the current packet
...
Prevent horrid and hard to trace struct overwrite.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-28 13:15:40 +02:00
Luca Barbato
afe03092dd
lavc: move put_bits_left in put_bits.h
2013-06-28 13:14:12 +02:00
Luca Barbato
07c52e2c7c
aac: return meaningful errors
2013-06-27 01:22:36 +02:00
Luca Barbato
6d8629aac1
aac: K&R formatting cosmetics
2013-06-27 01:22:06 +02:00
Luca Barbato
f963f701d9
ogg: relax demuxer conformance checks
...
Some samples in the wild are missing headers that are expected by the
specification but in practice do not affect decoding.
2013-06-22 20:54:59 +02:00
Luca Barbato
42cc6cefd3
avconv: report the error for codec open failure
...
External codec may have corner case reason to fail at init, better
report them instead having the user wonder.
2013-06-22 20:54:59 +02:00
Luca Barbato
1e340af8d6
avconv: drop additional strerror fallback
...
strerror_r is called by av_strerror already.
2013-06-22 20:54:59 +02:00
Luca Barbato
df9f22d42b
avf: move url utility functions in a separate file
2013-06-16 15:01:39 +02:00
Luca Barbato
12db891dcd
avf: move ff_write_chained to mux.c
2013-06-16 14:41:07 +02:00
Luca Barbato
508998f7d5
avf: move riff tags accessors where they belong
2013-06-16 14:41:07 +02:00
Luca Barbato
ec7c51c786
avf: move ff_http_match_no_proxy to network
...
It is only used by network protocols.
2013-06-16 14:41:00 +02:00
Luca Barbato
afc8685395
avf: split off format register and lookup function
2013-06-16 14:00:40 +02:00
Luca Barbato
f80b60ad59
bitstream: forward error values and drop few abort()
2013-06-16 09:30:26 +02:00
Luca Barbato
f776899a17
bitstream: K&R formatting cosmetics
2013-06-16 09:30:25 +02:00
Luca Barbato
9e80eda26d
h264_mp4toannexb_bsf: return a padded buffer
...
The code using the returned buffer might expect it to be
FF_INPUT_BUFFER_PADDING_SIZE padded as any other avpacket.
2013-06-15 16:14:45 +02:00
Luca Barbato
8d929afd25
h264_mp4toannexb_bsf: factor out extradata parsing
2013-06-15 16:14:33 +02:00
Luca Barbato
5d21ca4559
h264_mp4toannexb_bsf: K&R formatting cosmetics
2013-06-15 09:11:13 +02:00
Luca Barbato
59d7bb99b6
4xm: check bitstream_size boundary before using it
...
Prevent buffer overread.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-12 14:45:46 +02:00
Luca Barbato
fbd0dacc8d
4xm: refactor decode_p_block
...
Directly return from code 1, 2 and 6 codepaths and simplify the
remaining one to have a single overflow check and a single call to
mcdc.
2013-06-12 14:45:46 +02:00
Luca Barbato
94aefb1932
4xm: do not overread the source buffer in decode_p_block
...
Check for out of picture macroblocks before calling mcdc.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-12 14:45:46 +02:00
Luca Barbato
be373cb50d
4xm: do not overread the prestream buffer
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-12 14:45:46 +02:00
Luca Barbato
de2e5777e2
4xm: validate the buffer size before parsing it
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-12 14:45:46 +02:00
Luca Barbato
145023f572
4xm: reject frames not compatible with the declared version
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-12 14:45:46 +02:00
Luca Barbato
1f0c607560
4xm: drop pointless assert
...
Make sure the value of wlog2 is always between 0 and 3.
2013-06-12 14:45:46 +02:00
Luca Barbato
b8b809908e
4xm: forward errors from decode_p_block
...
Partially mitigate out of memory writes.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-12 14:45:46 +02:00
Luca Barbato
50ec1db62d
4xm: fold last_picture lazy allocation in decode_p_frame
2013-06-12 14:45:46 +02:00
Luca Barbato
42d73f7f6b
4xm: do not overread while parsing header
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-12 14:45:46 +02:00
Luca Barbato
e7a44f87d0
4xm: refactor fourxm_read_header
...
Split sound and video tag parsing in separate functions.
2013-06-12 14:45:46 +02:00
Luca Barbato
e6496ea7e7
4xm: K&R formatting cosmetics
2013-06-12 14:45:46 +02:00
Luca Barbato
08859d19b4
4xm: use the correct logging context
2013-06-12 14:45:46 +02:00
Luca Barbato
a3b2b83f01
faxcompr: return meaningful errors
...
And optionally forward them to the caller instead of concealing them.
Unify err and ret in a single variable.
2013-06-07 17:23:53 +02:00
Luca Barbato
f32aefcf34
faxcompr: K&R formatting cosmetics
2013-06-07 17:23:53 +02:00
Luca Barbato
9c22169769
tiff: do not overread the source buffer
...
At least 2 bytes from the source are read every loop.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-06-07 17:23:53 +02:00
Luca Barbato
999ccd2d0a
tiff: cleanup the error paths
...
Return the proper error values and optionally report them.
2013-06-07 17:23:53 +02:00
Luca Barbato
016c5b066d
tiff: refactor fax support in a separate function
2013-06-07 17:23:53 +02:00
Luca Barbato
103937681d
tiff: refactor deflate support in a separate function
...
Report when zlib support is missing.
2013-06-07 17:23:53 +02:00
Luca Barbato
f8a4d5e970
h264_parser: K&R formatting cosmetics
2013-06-07 16:54:55 +02:00
Luca Barbato
92b3caa108
vorbis: return meaningful errors
2013-06-07 16:54:16 +02:00
Luca Barbato
9835abb6d6
network: uniform ff_listen_bind and ff_listen_connect
...
Document the functions and have both use a millisecond timeout and
check for interrupt.
2013-06-04 14:56:52 +02:00
Luca Barbato
f849a77e67
network: factor out connect-listening code
...
Introduce ff_listen_connect, to be shared with the other
non-tcp network protocols.
2013-06-01 15:29:53 +02:00
Luca Barbato
28306e6d62
network: factor out bind-listening code
...
Introduce ff_listen_bind, to be shared with the other non-tcp
network protocols.
2013-06-01 15:29:53 +02:00
Luca Barbato
701966730c
vmd: drop incomplete chunks and spurious samples
...
Odd chunk size makes no sense for stereo and incomplete chunks are
not supported.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-29 21:30:21 +02:00
Luca Barbato
676da248ca
vmd: refactor the inner decode loop
...
Simplify a little, assume empty frames are acceptable and
do not pointlessly reinit the bytestream2 contexts using
possibly wrong size values.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-29 12:11:47 +02:00
Luca Barbato
c8f3cb9119
vmd: return meaningful errors
...
CC: libav-stable@libav.org
2013-05-29 12:11:47 +02:00
Luca Barbato
91a6944e56
vmd: use the PALETTE_COUNT constant uniformly
...
While at it drop useless parentheses.
2013-05-29 12:11:47 +02:00
Luca Barbato
0ba49d28a1
configure: support gcc-4.8 instrumentation
...
Since version 4.8 gcc sports asan and tsan integration that can
be leveraged when hunting bugs.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2013-05-28 17:22:16 +02:00
Luca Barbato
fd06291239
wavpack: check packet size early
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-22 22:02:57 +02:00
Luca Barbato
3f0b6d7a62
wavpack: use bytestream2 in wavpack_decode_block
...
Prevent most out of buffer reads.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-22 22:02:55 +02:00
Luca Barbato
cfbd98abe8
mjpegdec: validate parameters in mjpeg_decode_scan_progressive_ac
...
Prevent out of buffer write when decoding broken samples.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-21 09:46:02 +02:00
Luca Barbato
a030279a67
ljpeg: use the correct number of components in yuv
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-20 22:02:05 +02:00
Luca Barbato
8aa3500905
mjpeg: Validate sampling factors
...
They must be non-zero.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-20 22:02:05 +02:00
Luca Barbato
db347280eb
vorbis: fallback to normal division instead of crashing
...
The use of ff_inverse speeds up slightly arches + compilers that
do not provide a division faster than the whole machinery, such
as ppc32 + gcc4.7, but has operational limits.
Drop the always-enable assert and provide a fallback.
2013-05-19 22:56:37 +02:00
Luca Barbato
ddf1b4a2f8
vorbis: simplify the inner loop in setup_classifs
2013-05-19 22:56:37 +02:00
Luca Barbato
36f1038004
vorbis: use normal integer values for iterators
...
No need to use fixed-size integers.
2013-05-19 22:56:37 +02:00
Luca Barbato
98186578a2
vorbis: refactor vorbis_residue_decode_internal
2013-05-19 22:56:37 +02:00
Luca Barbato
edfe609fc9
configure: Add basic valgrind-massif support
...
With the parameter --toolchain valgrind-massif, the configure
script sets reasonable defaults that can be overridden as explained
in the documentation.
2013-05-18 21:29:17 +02:00
Luca Barbato
ed50673066
wavpack: validate samples size parsed in wavpack_decode_block
...
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-18 20:39:32 +02:00