summaryrefslogtreecommitdiff
path: root/src/libfaad/rvlc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libfaad/rvlc.c')
-rw-r--r--src/libfaad/rvlc.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/libfaad/rvlc.c b/src/libfaad/rvlc.c
index 2194906d6..70dcf7c29 100644
--- a/src/libfaad/rvlc.c
+++ b/src/libfaad/rvlc.c
@@ -16,7 +16,7 @@
** along with this program; if not, write to the Free Software
** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
**
-** $Id: rvlc.c,v 1.1 2002/12/16 19:01:03 miguelfreitas Exp $
+** $Id: rvlc.c,v 1.2 2003/04/12 14:58:47 miguelfreitas Exp $
**/
/* RVLC scalefactor decoding
@@ -133,8 +133,10 @@ uint8_t rvlc_decode_scale_factors(ic_stream *ics, bitfile *ld)
if (rvlc_esc_buffer) free(rvlc_esc_buffer);
if (rvlc_sf_buffer) free(rvlc_sf_buffer);
- faad_endbits(&ld_rvlc_sf);
- faad_endbits(&ld_rvlc_esc);
+ if (ics->length_of_rvlc_sf > 0)
+ faad_endbits(&ld_rvlc_sf);
+ if (ics->sf_escapes_present)
+ faad_endbits(&ld_rvlc_esc);
return result;
}
@@ -487,9 +489,9 @@ static int8_t rvlc_huffman_esc(bitfile *ld,
i = h->len;
if (direction > 0)
- cw = faad_getbits(ld, i);
+ cw = faad_getbits(ld, i DEBUGVAR(1,0,""));
else
- cw = faad_getbits_rev(ld, i);
+ cw = faad_getbits_rev(ld, i DEBUGVAR(1,0,""));
while ((cw != h->cw)
&& (i < 21))
@@ -507,4 +509,4 @@ static int8_t rvlc_huffman_esc(bitfile *ld,
return h->index;
}
-#endif \ No newline at end of file
+#endif