diff options
author | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2003-08-28 22:01:44 +0000 |
---|---|---|
committer | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2003-08-28 22:01:44 +0000 |
commit | 9f0de88e6de50c3ac117a0e364a08d6d432436c2 (patch) | |
tree | 714c70fdd6a309e2aa545360a5b7969e578c3bbd /libmpcodecs | |
parent | 1f6287474fd88642757235b7e605385341ef3735 (diff) | |
download | mpv-9f0de88e6de50c3ac117a0e364a08d6d432436c2.tar.bz2 mpv-9f0de88e6de50c3ac117a0e364a08d6d432436c2.tar.xz |
100l fix for paletted 8bpp files, I committed an old version
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@10714 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs')
-rw-r--r-- | libmpcodecs/vd_qt8bps.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/libmpcodecs/vd_qt8bps.c b/libmpcodecs/vd_qt8bps.c index 14a647acf1..1061d85d75 100644 --- a/libmpcodecs/vd_qt8bps.c +++ b/libmpcodecs/vd_qt8bps.c @@ -84,8 +84,6 @@ static int init(sh_video_t *sh) int vo_ret; // Video output init ret value qt8bps_context_t *hc; // Decoder context BITMAPINFOHEADER *bih = sh->bih; - int i; - unsigned char *psrc, *pdest; if ((hc = malloc(sizeof(qt8bps_context_t))) == NULL) { mp_msg(MSGT_DECVIDEO, MSGL_ERR, "Can't allocate memory for 8BPS decoder context.\n"); @@ -99,16 +97,10 @@ static int init(sh_video_t *sh) case 8: hc->planes = 1; hc->planemap[0] = 0; // 1st plane is palette indexes - if (bih->biSize > sizeof(BITMAPINFOHEADER)) { - psrc = (unsigned char*)bih + sizeof(BITMAPINFOHEADER); - pdest = hc->palette = (unsigned char *)malloc(256*3); - for (i = 0; i < 256; i++) { - *pdest++ = *psrc++; - *pdest++ = *psrc++; - *pdest++ = *psrc++; - psrc++; - } - } + if (bih->biSize > sizeof(BITMAPINFOHEADER)) { + hc->palette = (unsigned char *)malloc(256*4); + memcpy(hc->palette, (unsigned char*)bih + sizeof(BITMAPINFOHEADER), 256*4); + } break; case 24: hc->planes = 3; |