diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2002-01-18 19:41:04 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2002-01-18 19:41:04 +0000 |
commit | e2e6dd4ba7dceef5d6a64b9fd0035cecb7664a2f (patch) | |
tree | d8f261abb46813629b9d94477028fcc7fe4064d7 /gst/flx | |
parent | f34f00f438b35148d063185c3c8940b10768561e (diff) |
Fixed two off by one bugs in the delta decoding code.
Original commit message from CVS:
Fixed two off by one bugs in the delta decoding code.
Diffstat (limited to 'gst/flx')
-rw-r--r-- | gst/flx/gstflxdec.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/gst/flx/gstflxdec.c b/gst/flx/gstflxdec.c index b679fa48..bfa72788 100644 --- a/gst/flx/gstflxdec.c +++ b/gst/flx/gstflxdec.c @@ -340,8 +340,6 @@ flx_decode_delta_fli(GstFlxDec *flxdec, guchar *data, guchar *dest) /* packet count */ packets = *data++; - dest = start_p + (flxdec->hdr.width * (start_l - lines)); - while(packets--) { /* skip count */ dest += *data++; @@ -363,6 +361,8 @@ flx_decode_delta_fli(GstFlxDec *flxdec, guchar *data, guchar *dest) *dest++ = *data++; } } + start_p += flxdec->hdr.width; + dest = start_p; } } @@ -386,7 +386,7 @@ flx_decode_delta_flc(GstFlxDec *flxdec, guchar *data, guchar *dest) start_p = dest; start_l = lines; - while(lines--) { + while (lines) { dest = start_p + (flxdec->hdr.width * (start_l - lines)); /* process opcode(s) */ @@ -428,6 +428,7 @@ flx_decode_delta_flc(GstFlxDec *flxdec, guchar *data, guchar *dest) } } } + lines--; } } |