[FFmpeg-cvslog] dfa: use av_memcpy_backptr() where previously impossible

Mans Rullgard git at videolan.org
Wed Oct 24 14:25:29 CEST 2012


ffmpeg | branch: master | Mans Rullgard <mans at mansr.com> | Tue Oct 23 18:17:46 2012 +0100| [a153e45b953dee5b065939300d3a591772f43b19] | committer: Mans Rullgard

dfa: use av_memcpy_backptr() where previously impossible

Since the requirement for output padding has been lifted, we can
use av_memcpy_backptr() here as well.

Signed-off-by: Mans Rullgard <mans at mansr.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=a153e45b953dee5b065939300d3a591772f43b19
---

 libavcodec/dfa.c |    4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/libavcodec/dfa.c b/libavcodec/dfa.c
index 46051e0..ae184d7 100644
--- a/libavcodec/dfa.c
+++ b/libavcodec/dfa.c
@@ -122,9 +122,7 @@ static int decode_dsw1(GetByteContext *gb, uint8_t *frame, int width, int height
             count = ((v >> 13) + 2) << 1;
             if (frame - frame_start < offset || frame_end - frame < count)
                 return AVERROR_INVALIDDATA;
-            // can't use av_memcpy_backptr() since it can overwrite following pixels
-            for (v = 0; v < count; v++)
-                frame[v] = frame[v - offset];
+            av_memcpy_backptr(frame, offset, count);
             frame += count;
         } else if (bitbuf & (mask << 1)) {
             frame += bytestream2_get_le16(gb);



More information about the ffmpeg-cvslog mailing list