[MPlayer-cvslog] r21910 - trunk/libmpdemux/demux_gif.c

reimar subversion at mplayerhq.hu
Sat Jan 13 13:37:54 CET 2007


Author: reimar
Date: Sat Jan 13 13:37:53 2007
New Revision: 21910

Modified:
   trunk/libmpdemux/demux_gif.c

Log:
Implement refmode == 2 in gif demuxer


Modified: trunk/libmpdemux/demux_gif.c
==============================================================================
--- trunk/libmpdemux/demux_gif.c	(original)
+++ trunk/libmpdemux/demux_gif.c	Sat Jan 13 13:37:53 2007
@@ -145,14 +145,18 @@
     }
 
     memcpy_pic(dest, buf, w, h, priv->w, gif->Image.Width);
-  }
-
-  free(buf);
 
   priv->useref = 1;
   if (refmode == 1) memcpy(priv->refimg, dp->buffer, priv->w * priv->h);
-  // TODO: refmode == 2, set area of current image to background color
+    if (refmode == 2 && priv->useref) {
+      dest = priv->refimg + priv->w * t + l;
+      memset(buf, gif->SBackGroundColor, len);
+      memcpy_pic(dest, buf, w, h, priv->w, gif->Image.Width);
+    }
   if (!refmode) priv->useref = 0;
+  }
+
+  free(buf);
 
   demuxer->video->dpos++;
   dp->pts = ((float)priv->current_pts) / 100;



More information about the MPlayer-cvslog mailing list