diff options
author | Reimar Döffinger <Reimar.Doeffinger@gmx.de> | 2012-02-03 21:23:49 +0100 |
---|---|---|
committer | Reimar Döffinger <Reimar.Doeffinger@gmx.de> | 2012-02-03 23:12:10 +0100 |
commit | 58dabf7bf2fdd08f79173da0df613127ff783028 (patch) | |
tree | dabfb6aaf709f481da9b6fd018928ab716dc69e5 /libavcodec/pngdsp.h | |
parent | da1ba4e88b5bf723f8889798cb71f4e1cabb7a00 (diff) | |
download | ffmpeg-58dabf7bf2fdd08f79173da0df613127ff783028.tar.gz |
Fix png decoding on x86.
Line sizes are only 8-byte aligned, so use unaliged loads
for add_bytes_l2 pointers.
Increasing the alignment requirement to 16 seemed a bit extreme
(png may be used for rather small sizes).
Also fix a mov that had its arguments swapped, leading
add_bytes_l2 being applied on up to 8 bytes too few.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Diffstat (limited to 'libavcodec/pngdsp.h')
-rw-r--r-- | libavcodec/pngdsp.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/pngdsp.h b/libavcodec/pngdsp.h index 98d29a8a2f..f89a93a45a 100644 --- a/libavcodec/pngdsp.h +++ b/libavcodec/pngdsp.h @@ -26,8 +26,8 @@ typedef struct PNGDSPContext { void (*add_bytes_l2)(uint8_t *dst /* align 16 */, - uint8_t *src1 /* align 16 */, - uint8_t *src2 /* align 16 */, int w); + uint8_t *src1, + uint8_t *src2, int w); /* this might write to dst[w] */ void (*add_paeth_prediction)(uint8_t *dst, uint8_t *src, |