summaryrefslogtreecommitdiffstats
path: root/video
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2013-06-28 20:30:37 +0200
committerwm4 <wm4@nowhere>2013-06-28 20:30:37 +0200
commit823e0c511bea235be06d5e2037ef9d0b345d9405 (patch)
tree8501a3437d8dd40ed01555426dddc89b2baac730 /video
parent9e80fe1c15ea0fa5277585f3428c394a24b4e090 (diff)
downloadmpv-823e0c511bea235be06d5e2037ef9d0b345d9405.tar.bz2
mpv-823e0c511bea235be06d5e2037ef9d0b345d9405.tar.xz
mp_image: copy palette only if allocated
Normally, we assume that IMGFMT_PAL8 always has a palette allocated in plane 1. But there may be corner cases in ffmpeg where it doesn't (namely pseudo-pal stuff).
Diffstat (limited to 'video')
-rw-r--r--video/mp_image.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/video/mp_image.c b/video/mp_image.c
index d0be9d4ded..ec8f14fc34 100644
--- a/video/mp_image.c
+++ b/video/mp_image.c
@@ -327,7 +327,8 @@ void mp_image_copy_attributes(struct mp_image *dst, struct mp_image *src)
dst->levels = src->levels;
}
if (dst->imgfmt == IMGFMT_PAL8 && src->imgfmt == IMGFMT_PAL8) {
- memcpy(dst->planes[1], src->planes[1], MP_PALETTE_SIZE);
+ if (dst->planes[1] && src->planes[1])
+ memcpy(dst->planes[1], src->planes[1], MP_PALETTE_SIZE);
}
}