Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/xiph/speex.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjm <jm@0101bb08-14d6-0310-b084-bc0e0c8e3800>2003-08-23 01:45:02 +0400
committerjm <jm@0101bb08-14d6-0310-b084-bc0e0c8e3800>2003-08-23 01:45:02 +0400
commit9c4e4a948c3c10f3c9f1d905fccefcf4b00775ca (patch)
tree6f95534dfe10f74310b4899063940b2db3aa2d51
parentbd2d2cb9b4147754ca90e40dec61efd8583e2918 (diff)
speex_bits_write now properly inserts a terminator before copying the data
git-svn-id: http://svn.xiph.org/branches/rel-1-0-branch/speex@5237 0101bb08-14d6-0310-b084-bc0e0c8e3800
-rw-r--r--libspeex/bits.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/libspeex/bits.c b/libspeex/bits.c
index 68285e0..65555e3 100644
--- a/libspeex/bits.c
+++ b/libspeex/bits.c
@@ -166,6 +166,17 @@ void speex_bits_read_whole_bytes(SpeexBits *bits, char *bytes, int len)
int speex_bits_write(SpeexBits *bits, char *bytes, int max_len)
{
int i;
+ char bytePtr, bitPtr, nbBits;
+
+ /* Insert terminator, but save the data so we can put it back after */
+ bitPtr=bits->bitPtr;
+ bytePtr=bits->bytePtr;
+ nbBits=bits->nbBits;
+ speex_bits_insert_terminator(bits);
+ bits->bitPtr=bitPtr;
+ bits->bytePtr=bytePtr;
+ bits->nbBits=nbBits;
+
if (max_len > ((bits->nbBits+7)>>3))
max_len = ((bits->nbBits+7)>>3);
for (i=0;i<max_len;i++)