Comment 0 for bug 11949

Revision history for this message
In , Julien BLACHE (jblache) wrote : libogg0: not 64bit clean

Package: libogg0
Version: 1.1.0-1
Severity: important
Tags: patch

Hi,

libogg0 is not 64bit clean as it assumes sizeof(int) == sizeof(long); it is
especially problematic when dealing with bitwise operations, as does half of
libogg...

As it happens, it is not possible to read an OGG file containing a Theora
stream without this patch, as libtheora will (correctly) fail to recognize the
Theora stream.

The attached patch fixes the problem, by using an unsigned int instead of an
unsigned long. The two modified functions manipulate bits 0-31 as indicated in
the comments above the functions, so it's safe.

A first patch was sent over 2 years ago to the theora-dev list...

Please apply,

JB.

-- System Information:
Debian Release: 3.1
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.9
Locale: LANG=C, LC_CTYPE=fr_FR@euro (charmap=ISO-8859-15)

Versions of packages libogg0 depends on:
ii libc6 2.3.2.ds1-18 GNU C Library: Shared libraries an

-- no debconf information