From 618b067d2132b0336e609bc311e85c557ffb30ed Mon Sep 17 00:00:00 2001 From: Justin Ruggles Date: Mon, 12 Sep 2011 10:04:37 -0400 Subject: ws_snd: use memcpy() and memset() instead of loops --- libavcodec/ws-snd1.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'libavcodec/ws-snd1.c') diff --git a/libavcodec/ws-snd1.c b/libavcodec/ws-snd1.c index 3842ec9b32..57902a8243 100644 --- a/libavcodec/ws-snd1.c +++ b/libavcodec/ws-snd1.c @@ -60,7 +60,6 @@ static int ws_snd_decode_frame(AVCodecContext *avctx, int in_size, out_size; int sample = 128; - int i; uint8_t *samples = data; uint8_t *samples_end; @@ -87,8 +86,7 @@ static int ws_snd_decode_frame(AVCodecContext *avctx, samples_end = samples + out_size; if (in_size == out_size) { - for (i = 0; i < out_size; i++) - *samples++ = *buf++; + memcpy(samples, buf, out_size); *data_size = out_size; return buf_size; } @@ -153,16 +151,15 @@ static int ws_snd_decode_frame(AVCodecContext *avctx, sample = av_clip_uint8(sample); *samples++ = sample; } else { /* copy */ - for (count++; count > 0; count--) { - *samples++ = *buf++; - } + memcpy(samples, buf, smp); + samples += smp; + buf += smp; sample = buf[-1]; } break; default: /* run */ - for(count++; count > 0; count--) { - *samples++ = sample; - } + memset(samples, sample, smp); + samples += smp; } } -- cgit v1.2.3