Skip to content

Commit

Permalink
8svx: remove malloc and memcpy that have become unneeded
Browse files Browse the repository at this point in the history
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
  • Loading branch information
michaelni committed Oct 2, 2012
1 parent 8f0168a commit d4e82a3
Showing 1 changed file with 2 additions and 9 deletions.
11 changes: 2 additions & 9 deletions libavcodec/8svx.c
Expand Up @@ -94,7 +94,6 @@ static int eightsvx_decode_frame(AVCodecContext *avctx, void *data,

/* decode and interleave the first packet */
if (!esc->samples && avpkt) {
uint8_t *deinterleaved_samples, *p = NULL;
int packet_size = avpkt->size;

if (packet_size % avctx->channels) {
Expand All @@ -119,23 +118,17 @@ static int eightsvx_decode_frame(AVCodecContext *avctx, void *data,
av_log(avctx, AV_LOG_ERROR, "packet size is too small\n");
return AVERROR(EINVAL);
}
if (!(deinterleaved_samples = av_mallocz(n)))
return AVERROR(ENOMEM);
dst = p = deinterleaved_samples;

/* the uncompressed starting value is contained in the first byte */
dst = deinterleaved_samples;
dst = esc->samples;
for (i = 0; i < avctx->channels; i++) {
delta_decode(dst, buf + 1, buf_size / avctx->channels - 1, buf[0], esc->table);
buf += buf_size / avctx->channels;
dst += n / avctx->channels - 1;
}
} else {
deinterleaved_samples = avpkt->data;
memcpy(esc->samples, avpkt->data, esc->samples_size);
}

memcpy(esc->samples, deinterleaved_samples, esc->samples_size);
av_freep(&p);
}

/* get output buffer */
Expand Down

0 comments on commit d4e82a3

Please sign in to comment.