Ralph Giles [Tue, 7 Apr 2020 16:23:42 +0000 (09:23 -0700)]
Clean up trailing whitespace.
Ralph Giles [Tue, 7 Apr 2020 16:23:10 +0000 (09:23 -0700)]
Rewrap EXTRA_DIST lines.
Make the grouping a little more logical.
evpobr [Tue, 23 Apr 2019 05:14:09 +0000 (10:14 +0500)]
Add CMake config-file package generation
Signed-off-by: Ralph Giles <giles@thaumas.net>
Tyson Smith [Fri, 17 Jan 2020 17:55:16 +0000 (09:55 -0800)]
oss-fuzz: replace -lFuzzingEngine with $LIB_FUZZING_ENGINE
Signed-off-by: Tristan Matthews <tmatth@videolan.org>
Thomas Daede [Tue, 29 Jan 2019 01:39:24 +0000 (17:39 -0800)]
Don't leak memory in test_sharedbook to please asan.
sezero [Sun, 11 Nov 2018 05:01:10 +0000 (08:01 +0300)]
os.h: make vorbis_ftoi() static inline if !VORBIS_FPU_CONTROL
sezero [Sat, 10 Nov 2018 14:00:02 +0000 (17:00 +0300)]
os.h: cleanup the _MSC_VER cpp checks mess.
sezero [Sat, 10 Nov 2018 13:51:01 +0000 (16:51 +0300)]
fix typo introduced in commit 8d73daa
tico-tico [Fri, 25 Jan 2019 13:40:16 +0000 (16:40 +0300)]
Check for sse2 math before using it.
sezero [Sat, 10 Nov 2018 21:51:10 +0000 (00:51 +0300)]
info.c (tagcompare): use a locale-insensitive toupper()
see: https://gitlab.xiph.org/xiph/vorbis/issues/2079
Thomas Daede [Mon, 28 Jan 2019 23:33:32 +0000 (15:33 -0800)]
Port opus-tools check to see if underlying file was overwritten.
James Cowgill [Tue, 13 Jun 2017 12:39:52 +0000 (13:39 +0100)]
Fix free of uninitialized memory if seek fails in ov_raw_seek
If _seek_helper fails in ov_raw_seek, control jumps to the seek_error
label which calls ogg_stream_clear on work_os. However, at this point
in the function, work_os is not initialized so we end up attempting to
free some uninitialized memory and crashing.
Fix by removing the call to ogg_stream_clear. This is safe because the
only code path to seek_error happens before work_os is initialized (so
there is never anything to free anyway).
I also refactor the code a bit:
- Remove the ret variable which is unnessesary since we can just pass
the result of _seek_helper directly to the if.
- Since seek_error is only used once, move the contents of that block
to the if statement so we can remove a goto.
Thomas Daede [Mon, 28 Jan 2019 22:59:52 +0000 (14:59 -0800)]
Remove C99-style comments.
Minmin Gong [Thu, 5 Jul 2018 04:37:54 +0000 (21:37 -0700)]
Fix the compiling errors on msvc ARM64 configuration.
Thomas Daede [Wed, 23 May 2018 22:23:09 +0000 (15:23 -0700)]
Fix shift by negative value when reading blocksize.
Stephen [Mon, 27 Nov 2017 19:28:35 +0000 (11:28 -0800)]
add osx to travis
Paul Kehrer [Tue, 3 Apr 2018 13:35:55 +0000 (08:35 -0500)]
add fuzzers and build script from OSS-Fuzz
Thomas Daede [Thu, 17 May 2018 23:19:19 +0000 (16:19 -0700)]
Sanity check number of channels in setup.
Fixes #2335.
Thomas Daede [Mon, 14 May 2018 22:45:00 +0000 (15:45 -0700)]
Clamp large exponents in float32_unpack.
Thomas Daede [Wed, 9 May 2018 21:56:59 +0000 (14:56 -0700)]
CVE-2017-14160: fix bounds check on very low sample rates.
Tristan Matthews [Mon, 9 Apr 2018 15:15:07 +0000 (11:15 -0400)]
vorbisenc: detect if new_template is NULL
Fixes #1975
Marcel Metz [Tue, 20 Mar 2018 20:15:40 +0000 (21:15 +0100)]
Include CMake build scripts in release archives
Fixes xiph/vorbis#32
Thomas Daede [Fri, 16 Mar 2018 03:36:25 +0000 (20:36 -0700)]
Update release version in configure.ac to 1.3.6
Thomas Daede [Fri, 16 Mar 2018 03:34:28 +0000 (20:34 -0700)]
Update CHANGES and dates for 1.3.6.
Thomas Daede [Fri, 16 Mar 2018 03:25:47 +0000 (20:25 -0700)]
Bump version to 1.3.6
Thomas Daede [Thu, 15 Mar 2018 21:15:31 +0000 (14:15 -0700)]
CVE-2018-5146: Prevent out-of-bounds write in codebook decoding.
Codebooks that are not an exact divisor of the partition size are now
truncated to fit within the partition.
Guido Günther [Wed, 15 Nov 2017 17:22:59 +0000 (18:22 +0100)]
CVE-2017-14632: vorbis_analysis_header_out: Don't clear opb if not initialized
If the number of channels is not within the allowed range
we call oggback_writeclear altough it's not initialized yet.
This fixes
=23371== Invalid free() / delete / delete[] / realloc()
==23371== at 0x4C2CE1B: free (vg_replace_malloc.c:530)
==23371== by 0x829CA31: oggpack_writeclear (in /usr/lib/x86_64-linux-gnu/libogg.so.0.8.2)
==23371== by 0x84B96EE: vorbis_analysis_headerout (info.c:652)
==23371== by 0x9FBCBCC: ??? (in /usr/lib/x86_64-linux-gnu/sox/libsox_fmt_vorbis.so)
==23371== by 0x4E524F1: ??? (in /usr/lib/x86_64-linux-gnu/libsox.so.2.0.1)
==23371== by 0x4E52CCA: sox_open_write (in /usr/lib/x86_64-linux-gnu/libsox.so.2.0.1)
==23371== by 0x10D82A: open_output_file (sox.c:1556)
==23371== by 0x10D82A: process (sox.c:1753)
==23371== by 0x10D82A: main (sox.c:3012)
==23371== Address 0x68768c8 is 488 bytes inside a block of size 880 alloc'd
==23371== at 0x4C2BB1F: malloc (vg_replace_malloc.c:298)
==23371== by 0x4C2DE9F: realloc (vg_replace_malloc.c:785)
==23371== by 0x4E545C2: lsx_realloc (in /usr/lib/x86_64-linux-gnu/libsox.so.2.0.1)
==23371== by 0x9FBC9A0: ??? (in /usr/lib/x86_64-linux-gnu/sox/libsox_fmt_vorbis.so)
==23371== by 0x4E524F1: ??? (in /usr/lib/x86_64-linux-gnu/libsox.so.2.0.1)
==23371== by 0x4E52CCA: sox_open_write (in /usr/lib/x86_64-linux-gnu/libsox.so.2.0.1)
==23371== by 0x10D82A: open_output_file (sox.c:1556)
==23371== by 0x10D82A: process (sox.c:1753)
==23371== by 0x10D82A: main (sox.c:3012)
as seen when using the testcase from CVE-2017-11333 with
008d23b782be09c8d75ba8190b1794abd66c7121 applied. However the error was
there before.
Guido Günther [Tue, 31 Oct 2017 17:32:46 +0000 (18:32 +0100)]
CVE-2017-14633: Don't allow for more than 256 channels
Otherwise
for(i=0;i<vi->channels;i++){
/* the encoder setup assumes that all the modes used by any
specific bitrate tweaking use the same floor */
int submap=info->chmuxlist[i];
overreads later in mapping0_forward since chmuxlist is a fixed array of
256 elements max.
Loren M. Lang [Sat, 11 Nov 2017 10:14:35 +0000 (02:14 -0800)]
Fixed error in Vorbis I specification for limiting residue vector size
The minimum between the encoded residue boundaries and actual block size
needs to be used, otherwise it pushes the boundaries to the edge of the
actual blocksize or beyond.
Tristan Matthews [Thu, 9 Nov 2017 07:30:14 +0000 (02:30 -0500)]
vorbis: avoid invalid free
Regression started at commit "4b67376 Remove multiple subtly different inline..."
Ralph Giles [Mon, 25 Sep 2017 22:58:41 +0000 (15:58 -0700)]
Add build flags for YouCompleteMe.
Add a .ycm_extra.conf.py script to return the same CFLAGS
we pass for `make debug`. These are passed to libclang
so symbol lookup works correctly.
Note this doesn't pick up changes to the build config,
including non-default locations for the ogg headers,
but it's better than nothing.
sezero [Sun, 23 Jul 2017 08:30:06 +0000 (11:30 +0300)]
mapping0.c (mapping0_unpack): kill a useless memset()
info is allocated with calloc() already.
Signed-off-by: Ralph Giles <giles@thaumas.net>
sezero [Sun, 23 Jul 2017 08:27:00 +0000 (11:27 +0300)]
os.h: change elif _WIN32 to elif defined(_WIN32)
This symbol is only defined (with the value 1) when building
for the Windows target, so we need to ifdef, not if.
Signed-off-by: Ralph Giles <giles@thaumas.net>
Philipp Schafft [Sat, 22 Jul 2017 23:27:53 +0000 (23:27 +0000)]
Cleanup: Removed tailing white-spaces in C code files
Signed-off-by: Ralph Giles <giles@thaumas.net>
Ralph Giles [Sat, 22 Jul 2017 16:39:42 +0000 (09:39 -0700)]
Update release checklist for the transition to git.
The tagging method is different now that our main
repository is in git instead of subversion.
Marcel Metz [Mon, 7 Mar 2016 20:20:21 +0000 (21:20 +0100)]
CMake: Add vorbisenc.c to vorbis target for WIN32 builds
On Windows the vorbis shared library exports some symbols defined in the
vorbisen.c file. To allow error free linking this file should be added
to to the VORBIS_SOURCES.
Signed-off-by: Ralph Giles <giles@thaumas.net>
Jörn Heusipp [Sat, 22 Jul 2017 06:29:35 +0000 (08:29 +0200)]
Fix reading maximum, nominal, minimum bitrate in _vorbis_unpack_info().
https://xiph.org/vorbis/doc/Vorbis_I_spec.html#x1-630004.2.2 specifies
these fields as 32bit signed. oggpack_read(opb,32), which is used to
read these fields, returns 32 bits stored in a long. On architectures
where long is 64bit, this results in a positive value being returned.
This value is then stored in struct vorbis_info in bitrate_upper,
bitrate_nominal and bitrate_lower, also as long. ogginfo relies on
these values in order to display the respective header fields and thus
misrepresented the stored value -1 (which has the intended meaning of
"bitrate not set") as 2**32-1 on architectures where long is 64bit.
Explicitly cast the return value of oggpack_read() to a signed 32bit
integer type.
A nominal bitrate value of -1 is valid as per specification, and is
written by libvorbis for VBR files with samplerate >= 50000Hz.
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
Ralph Giles [Fri, 16 Jun 2017 20:44:20 +0000 (13:44 -0700)]
Remove svn $Id$ header.
Most checked-in files had a comment with a filename and
last-modified string automatically updated by the
subversion version control tool. These became obsolete
when we migrated the repository to git. Remove them.
Timothy B. Terriberry [Tue, 4 Oct 2016 01:22:16 +0000 (18:22 -0700)]
Fix signed overflow in _book_maptype1_quantvals().
If b->dims is very large, vals will be 1 and acc1 will overflow a
long.
This causes us to read too many values for this codebook.
Signed-off-by: Monty <xiphmont@xiph.org>
Ralph Giles [Wed, 5 Oct 2016 20:25:36 +0000 (13:25 -0700)]
Add AppVeyor build status badge.
Marcel Metz [Wed, 5 Oct 2016 16:23:53 +0000 (18:23 +0200)]
Make CMake build test on Travis-CI mandatory
Signed-off-by: Ralph Giles <giles@thaumas.net>
Marcel Metz [Wed, 5 Oct 2016 16:07:26 +0000 (18:07 +0200)]
Add cmake as optional build system to Travis-CI configuration
Marcel Metz [Wed, 5 Oct 2016 16:05:43 +0000 (18:05 +0200)]
Add BUILD_SYSTEM env variable to Travis-CI build matrix
This allows to switch between different build systems when building
multiple test matrix configurations.
Ralph Giles [Wed, 5 Oct 2016 20:07:00 +0000 (13:07 -0700)]
autotools: Fix doc_DATA install.
Both the generated format specification document and the static
html documents depend on the logo in fish_xiph_org.png.
Unfortunately we can't list them both in their respective
dependencies because both are passed to doc_DATA for installation
and automake doesn't seem to remove duplicates, causing
/usr/bin/install to complain about the overwrite.
I couldn't find a good solution to this. Wrapping the doc_DATA
value in GNU make's $(sort /list/) function would work, but
automake warns about the non-portable construct. Instead, I've
just removed it from the spec dependency list and appended it
manually.
Ralph Giles [Wed, 5 Oct 2016 19:49:26 +0000 (12:49 -0700)]
Add missing graphics for the html spec.
New equations were added to the spec source in the previous
update (early last year) but the generated graphic versions
where not added to the repository.
Also add all the generated figures to the distribution. No
sense in shipping a spec with broken links.
Marcel Metz [Wed, 5 Oct 2016 16:19:30 +0000 (18:19 +0200)]
Make CMake build test on AppVeyor mandatory
Signed-off-by: Ralph Giles <giles@thaumas.net>
Marcel Metz [Wed, 5 Oct 2016 15:11:35 +0000 (17:11 +0200)]
Use different install dir for libogg dependency in CMake AppVeyor
Marcel Metz [Wed, 5 Oct 2016 14:10:18 +0000 (16:10 +0200)]
Add OGG_ROOT search path to AppVeyor CMake build
Marcel Metz [Wed, 5 Oct 2016 14:03:40 +0000 (16:03 +0200)]
Build CMake install target for libogg dependency on AppVeyor
Marcel Metz [Wed, 5 Oct 2016 13:39:22 +0000 (15:39 +0200)]
Add cmake as optional build system to AppVeyor configuration
Marcel Metz [Wed, 5 Oct 2016 13:36:27 +0000 (15:36 +0200)]
Add BUILD_SYSTEM env variable to AppVeyor build matrix
This allows to switch between different build systems when building
multiple test matrix configurations.
Marcel Metz [Wed, 5 Oct 2016 13:31:57 +0000 (15:31 +0200)]
Use build_script step in AppVeyor configuration
Preparations for building with multiple build systems
Russell Greene [Tue, 4 Oct 2016 01:13:35 +0000 (19:13 -0600)]
Fix CMake error
Include vorbis library when linking vorbisfile and vorbisenc.
Signed-off-by: Ralph Giles <giles@thaumas.net>
Ralph Giles [Thu, 8 Sep 2016 19:38:57 +0000 (12:38 -0700)]
Initial appveyor config to test the Windows build.
This makes the minimal changes necessary to build
the dynamic solution Win32|Debug target with VS2015
and against the static solution from the ogg master
branch.
The other targets can be added after updating the
project files for VS2015.
Christian Weiske [Fri, 22 Jul 2016 19:56:10 +0000 (21:56 +0200)]
Add ids to v-comment.html
This allows linking to specific sections.
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
Erik de Castro Lopo [Thu, 12 May 2016 09:35:28 +0000 (19:35 +1000)]
doc/Makefile.am: Fix `clean` target
The `doc/Vorbis_I_spec*.png` files are checked into git, but were also
being incorrectly deleted during `make clean` because they were listed
in `CLEANFILES`.
Ralph Giles [Mon, 28 Mar 2016 20:05:17 +0000 (13:05 -0700)]
Update doxygen message.
Configure only looks for doxygen if --enable-docs is passed,
so report that as the issue instead.
Ralph Giles [Mon, 28 Mar 2016 20:00:30 +0000 (13:00 -0700)]
Pass -Wall -Wextra when building on linux32.
We want to be warning-free, so this should be the default,
not just debug builds. It already is on most other targets.
Ralph Giles [Mon, 28 Mar 2016 20:01:32 +0000 (13:01 -0700)]
Make travis builds verbose.
Recover the full compiler command lines for reference in the
logs after the AM_SILENT_RULES change.
Ralph Giles [Mon, 28 Mar 2016 19:49:27 +0000 (12:49 -0700)]
Enable AM_SILENT_RULES.
Makes warnings more obvious.
Steffen Ohrendorf [Sat, 30 Jan 2016 23:19:38 +0000 (23:19 +0000)]
Fix install of pkgconfig files and allow use of OGG_ROOT variable
Chocobo1 [Fri, 26 Feb 2016 14:29:11 +0000 (22:29 +0800)]
Use svg image for TravisCI badge
Chocobo1 [Thu, 25 Feb 2016 14:27:39 +0000 (22:27 +0800)]
Enable parallel builds on TravisCI
Chocobo1 [Sun, 21 Feb 2016 14:27:16 +0000 (22:27 +0800)]
Add testing with clang compiler
Ralph Giles [Mon, 18 Jan 2016 19:35:11 +0000 (11:35 -0800)]
travis: use sudo-less apt-plugin install of libogg-dev.
This lets our test job dispatch on the container infrastructure,
which is faster.
Ralph Giles [Tue, 13 Oct 2015 22:32:59 +0000 (15:32 -0700)]
Allocate comment temporaries on the heap.
Use malloc/free instead of the more convenient alloca for
comment data. Album art can easily be larger than the local
stack limit and crash the process.
Thanks to Robert Kausch for the suggestion.
Ralph Giles [Sat, 26 Sep 2015 00:13:54 +0000 (17:13 -0700)]
Remove spurious variable from autogen.sh.
Erik de Castro Lopo [Wed, 5 Aug 2015 07:18:37 +0000 (17:18 +1000)]
configure.ac: Add AC_CONFIG_MACRO_DIR
Erik de Castro Lopo [Wed, 5 Aug 2015 07:17:50 +0000 (17:17 +1000)]
configure.ac: Whitespace only
stopiccot [Sun, 14 Jun 2015 23:21:21 +0000 (02:21 +0300)]
Add CMake documentation to readme.
Signed-off-by: Ralph Giles <giles@thaumas.net>
stopiccot [Sun, 7 Jun 2015 14:15:41 +0000 (17:15 +0300)]
Add CMake script to build vorbis.
Signed-off-by: Ralph Giles <giles@thaumas.net>
Ralph Giles [Sun, 31 May 2015 17:08:29 +0000 (10:08 -0700)]
Use https urls in README.
Ralph Giles [Sun, 31 May 2015 17:07:22 +0000 (10:07 -0700)]
Remove trailing whitespace.
stopiccot [Wed, 20 May 2015 17:16:01 +0000 (20:16 +0300)]
Add build description for travis continuous integration service.
Signed-off-by: Ralph Giles <giles@thaumas.net>
stopiccot [Sat, 30 May 2015 08:20:46 +0000 (11:20 +0300)]
Switch README to markdown.
Signed-off-by: Ralph Giles <giles@thaumas.net>
Ralph Giles [Thu, 21 May 2015 04:02:29 +0000 (21:02 -0700)]
Remove AC_CONFIG_MACRO_DIRS.
Jenkins doesn't have new enough libtool for this.
Ralph Giles [Thu, 21 May 2015 02:49:06 +0000 (19:49 -0700)]
Make git ignore generated files.
Ralph Giles [Thu, 21 May 2015 02:44:12 +0000 (19:44 -0700)]
Fix automake warning.
Newer versions prefer AM_CPPFLAGS to INCLUDES.
Tell libtool about our m4 directory.
Ralph Giles [Thu, 21 May 2015 02:38:31 +0000 (19:38 -0700)]
Simplify autogen.sh
Copy the autogen.sh script from the newer daala project. This
just calls autoreconf instead of doing its own tool and
version detection.
Note that this now means one must explicitly invoke ./configure
as ./autogen.sh will no longer do so.
Ralph Giles [Thu, 21 May 2015 02:28:43 +0000 (19:28 -0700)]
Remove todo and MacOS 9 files from distribution.
Fixes 'make distcheck'.
stopiccot [Wed, 20 May 2015 17:37:37 +0000 (20:37 +0300)]
Remove Mac OS 9 project files
Signed-off-by: Ralph Giles <giles@thaumas.net>
Thomas Daede [Tue, 19 May 2015 18:11:35 +0000 (11:11 -0700)]
Link all of the examples to libogg.
Ralph Giles [Tue, 3 Mar 2015 17:35:37 +0000 (17:35 +0000)]
More release checklist additions.
svn path=/trunk/vorbis/; revision=19466
Ralph Giles [Tue, 3 Mar 2015 16:23:14 +0000 (16:23 +0000)]
Clarify xiph.org updates on the release checklist.
Thanks to mark4o for the suggestions.
svn path=/trunk/vorbis/; revision=19462
Ralph Giles [Tue, 3 Mar 2015 01:18:18 +0000 (01:18 +0000)]
Add a release checklist.
I always forget things, this is good documentation, and it's been
helpful with the opus releases.
svn path=/trunk/vorbis/; revision=19461
Ralph Giles [Tue, 3 Mar 2015 01:10:26 +0000 (01:10 +0000)]
Record the release date.
Also two more copyright bumps which somehow didn't make the earlier commit.
svn path=/trunk/vorbis/; revision=19460
Ralph Giles [Tue, 3 Mar 2015 00:15:29 +0000 (00:15 +0000)]
Bump more copyright dates.
svn path=/trunk/vorbis/; revision=19457
Ralph Giles [Tue, 3 Mar 2015 00:06:11 +0000 (00:06 +0000)]
Update changes for release.
svn path=/trunk/vorbis/; revision=19456
Monty [Mon, 2 Mar 2015 23:03:34 +0000 (23:03 +0000)]
Suppress spurious 'may be used uninitialized' gcc warnings in floor1.c
encode with static initializers.
svn path=/trunk/vorbis/; revision=19455
Monty [Mon, 2 Mar 2015 22:39:28 +0000 (22:39 +0000)]
Roll back unintentionally chaged file (barkmel.c) from previous commit.
svn path=/trunk/vorbis/; revision=19454
Monty [Mon, 2 Mar 2015 22:35:34 +0000 (22:35 +0000)]
Remove a set-but-unused variable (lastdelta) in the encode-side lsp
code. Note that the code in question is effectively dead as it's for
floor0 encoding, and floor zero has been deprecated for over a decade.
svn path=/trunk/vorbis/; revision=19453
Monty [Fri, 27 Feb 2015 21:38:33 +0000 (21:38 +0000)]
Somehow the previous svn rm lspmap.png didn't take.
svn path=/trunk/vorbis/; revision=19451
Monty [Fri, 27 Feb 2015 21:35:42 +0000 (21:35 +0000)]
Errata to correct typo in bark equation in 6.2.5 of spec; the last
paren was misplaced. The error apparently appeared when resetting the
doc to XML or DocBook. Note that lspmap.png was erroneously updated
to reflect the typo in r8547 and so it's been wrong since then too.
The original HTML spec was correct (as is the code).
Also remove the associated rendered versions of the typeset equations
as they're no longer used (and lspmap.png was incorrect as described
above anyway)
svn path=/trunk/vorbis/; revision=19450
Ralph Giles [Fri, 27 Feb 2015 19:07:00 +0000 (19:07 +0000)]
Don't use MSVC inline assembly on arm targets.
Patch from Hugo Beauzée-Luyssen. Fixes the build in WindowsRT/ARM.
svn path=/trunk/vorbis/; revision=19449
Monty [Thu, 26 Feb 2015 22:30:13 +0000 (22:30 +0000)]
Update docs makefile according to reflect newly removed graphics files.
svn path=/trunk/vorbis/; revision=19448
Monty [Thu, 26 Feb 2015 22:26:56 +0000 (22:26 +0000)]
Remove the ancient (if unlinked) doc/vorbis.html as well as more newly unused graphics.
svn path=/trunk/vorbis/; revision=19447
Monty [Thu, 26 Feb 2015 22:16:01 +0000 (22:16 +0000)]
Eliminate old, neglected DocBook XML version of Vorbis spec doc. It's
not been consistently maintained n a number of years and does not
contain all additions/corrections made to the TeX.
svn path=/trunk/vorbis/; revision=19446
Monty [Thu, 26 Feb 2015 22:06:54 +0000 (22:06 +0000)]
This commit has two 'functional changes':
Update the footer to use a modern logo and not kick out a formatting error
handle errata discussed in Trac #2139 regarding single-entry codebooks
svn path=/trunk/vorbis/; revision=19445
Monty [Thu, 26 Feb 2015 02:30:33 +0000 (02:30 +0000)]
Trac 2139 indirectly brought to light the case of a stream that uses a
single-entry codebook, but does not code a codeword of length 1 equal
to zero. Such a stream could cause a stream to read garbage.
There is no apparent chance of garbage memory writes as this happen
entirely after decode setup, however there is playback DoS potential.
This commit special cases single-entry codebook setup so that decode
is well-defined for streams with single-entry codebooks, and adds some
comments to make it more clear how the case is handled.
svn path=/trunk/vorbis/; revision=19444
Monty [Wed, 21 Jan 2015 05:24:41 +0000 (05:24 +0000)]
Render prototype and actual function declatation of ov_ilog() semantically consistent
svn path=/trunk/vorbis/; revision=19442