summaryrefslogtreecommitdiff
path: root/libavcodec/imx.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/imx.c')
-rw-r--r--libavcodec/imx.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/libavcodec/imx.c b/libavcodec/imx.c
index 0d6c99e5bf..d86c747c6d 100644
--- a/libavcodec/imx.c
+++ b/libavcodec/imx.c
@@ -21,6 +21,7 @@
#include "libavutil/common.h"
#include "avcodec.h"
#include "bytestream.h"
+#include "decode.h"
#include "internal.h"
typedef struct SimbiosisIMXContext {
@@ -50,16 +51,13 @@ static int imx_decode_frame(AVCodecContext *avctx, void *data,
{
SimbiosisIMXContext *imx = avctx->priv_data;
int ret, x, y;
- buffer_size_t pal_size;
- const uint8_t *pal = av_packet_get_side_data(avpkt, AV_PKT_DATA_PALETTE, &pal_size);
AVFrame *frame = imx->frame;
GetByteContext gb;
if ((ret = ff_reget_buffer(avctx, frame, 0)) < 0)
return ret;
- if (pal && pal_size == AVPALETTE_SIZE) {
- memcpy(imx->pal, pal, pal_size);
+ if (ff_copy_palette(imx->pal, avpkt, avctx)) {
frame->palette_has_changed = 1;
frame->key_frame = 1;
} else {