[Vorbis-dev] Re: [xiph-commits] r14479 - trunk/vorbis-tools/ogg123

Ivo Emanuel Gonçalves justivo at gmail.com
Mon Feb 11 12:52:31 PST 2008


On 2/11/08, Ralph Giles <giles at xiph.org> wrote:
> I'm confused. How does making these long help?

I was going to post, or rather forward, Christian's explanation to the
vorbis-tools 1.2.0 thread.  Might as well do it here:

"ogg123 suffers from a 32/64-bit screwup on LP64 platforms.
cfgfile_options.c expects opt_type_bool and opt_type_int settings
to be stored in long int variables.  However, ogg123.c:fileopts[]
points to options.shuffle and options.repeat that are defined as
int in ogg123.h.  This causes 64-bit writes to 32-bit variables.
Depending on endianness, strict alignment requirements, and luck,
this can result in garbage or address errors.  (E.g., on sparc64,
ogg123 immediately dumps core.)  The easiest way to fix this is to
bump options.shuffle and .repeat to type long int."


More information about the Vorbis-dev mailing list