Bug#635906: SIGFPE from /usr/lib/libvorbisfile.so.3

2011-08-07 Thread Vincent Bernat
OoO En  ce début  d'après-midi ensoleillé du  vendredi 29  juillet 2011,
vers 15:15, Edgar  Antonio Palma de la Cruz  xbyt...@gmail.com (by way
of Edgar Antonio Palma de la Cruz xbyt...@gmail.com) disait :

 Program received signal SIGFPE, Arithmetic exception.
 0x7fffe7ca6bb5 in ov_read_filter (vf=0x1fc3120, buffer=0x1ffdb80
 , length=value optimized out, bigendianp=0, word=0, sgned=1,
 bitstream=0x7fffbc38, filter=0, filter_param=0x0) at
 vorbisfile.c:1905 1905vorbisfile.c: No existe el fichero o el
 directorio. in vorbisfile.c 
 (gdb) 

 I had installed libvorbis-dbg as you can see.
 The line 1905 of vorbisfile.c :

 $ more +1901 -8 libvorbis-1.3.2/lib/vorbisfile.c 

 long channels=ov_info(vf,-1)-channels;
 long bytespersample=word * channels;
 vorbis_fpu_control fpu;
 if(sampleslength/bytespersample)samples=length/bytespersample;

 if(samples = 0)
   return OV_EINVAL;

Here is a way to reproduce it:

import ogg.vorbis
f = ogg.vorbis.VorbisFile(/usr/share/games/balazar3/sounds/oceane.ogg)
f.read(16384)

oceane.ogg is in balazar3-common package.

/usr/share/games/balazar3/sounds/oceane.ogg:  Ogg  data,  Vorbis  audio,
mono, 44100 Hz, ~96001 bps, created by: Xiph.Org libVorbis I (1.0.1)

This bugs breaks balazar3 and balazar-brothers.

Here is backtrace:
#0  0x7f2bcfdfabb5 in ov_read_filter (vf=0x1f253f0, buffer=
0x2021db0 
'''\377'''\377'''\377(('\377(('\377(((\377(((\377(((\377(((\377(((\377()(\377(((\377'('\377''\377\377%\377\377'''\377'''\377(((\377()(\377())\377())\377())\377)))\377))*\377***\377*+*\377)**\377)*)\377)))\377())\377())\377)*)\377)*)\377)*)\377)*)\377*+*\377+++\377+,,\377+,,\377*+,\377')*\377
 
\$\377\026\032\034\377\016\021\024\377\n\r\020\377\n\r\022\377\r\021\026\377\020\024\032\377...,
 length=value optimized out, 
bigendianp=0, word=0, sgned=1, bitstream=0x7fff09e26668, filter=0, 
filter_param=0x0) at vorbisfile.c:1905
bytespersample = 0
hs = value optimized out
pcm = value optimized out
samples = 576

-- 
Vincent Bernat ☯ http://vincent.bernat.im

printk(Illegal format on cdrom.  Pester manufacturer.\n); 
2.2.16 /usr/src/linux/fs/isofs/inode.c


pgpyVyOPGnYMO.pgp
Description: PGP signature


Bug#635906: SIGFPE from /usr/lib/libvorbisfile.so.3

2011-07-29 Thread Edgar Antonio Palma de la Cruz
Package: libvorbisfile3
Version: 1.3.2-1
Severity: important

Running balazar from gdb I had this issue:

$ gdb python
GNU gdb (GDB) 7.2-debian
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
http://gnu.org/licenses/gpl.html This is free software: you are free
to change and redistribute it. There is NO WARRANTY, to the extent
permitted by law.  Type show copying and show warranty for details.
This GDB was configured as x86_64-linux-gnu.
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/...
Reading symbols from /usr/bin/python...Reading symbols
from /usr/lib/debug/usr/bin/python2.7...done. done.
(gdb) run /usr/games/balazar
Starting program: /usr/bin/python /usr/games/balazar
[Thread debugging using libthread_db enabled]
* Balazar * Balazar lives in /usr/share/games
* Soya * Using Software Surface.
* Soya * Using 8 bits stencil buffer
* Soya * OpenGL initialization  [OK]

* Soya * version 0.15rc1
* Using OpenGL 2.1 Mesa 7.10.3
*   - renderer : Mesa DRI Intel(R) 965GM  
*   - vendor   : Tungsten Graphics, Inc
*   - maximum number of lights: 8
*   - maximum number of clip planes   : 6
*   - maximum number of texture units : 8
*   - maximum texture size: 4096 pixels
[New Thread 0x7fffebaaa700 (LWP 14684)]
[New Thread 0x7fffe72a8700 (LWP 14685)]
[New Thread 0x7fffe6aa7700 (LWP 14686)]
[Thread 0x7fffe72a8700 (LWP 14685) exited]
AL lib: pulseaudio.c:612: Context did not connect: Connection refused
[Thread 0x7fffe6aa7700 (LWP 14686) exited]
[Thread 0x7fffebaaa700 (LWP 14684) exited]
[New Thread 0x7fffebaaa700 (LWP 14687)]
* Using OpenAL 1.1 ALSOFT 1.13
*   - renderer  : OpenAL Soft
*   - vendor: OpenAL Community

SETCSTATE (Body, model=None, AnimatedModel balazar, [1, 0],
[(World, model=None, 19, 1)]) SETCSTATE (Body, model=None,
AnimatedModel echassien2@vert, [0, 1], []) SETCSTATE (Body,
model=None, AnimatedModel sage, [0, 1], []) SETCSTATE (Body,
model=None, AnimatedModel echassien2, [0, 1], [(World, model=None,
7, 1)]) SETCSTATE (Body, model=None, AnimatedModel echassien2, [0,
1], [(World, model=None, 7, 1)]) SETCSTATE (Body, model=None,
AnimatedModel echassien2, [0, 1], [(World, model=None, 7, 1)])
SETCSTATE (Body, model=None, AnimatedModel echassien2, [0, 1],
[(World, model=None, 7, 1)]) SETCSTATE (Body, model=None,
AnimatedModel echassien2, [0, 1], [(World, model=None, 7, 1)])
SETCSTATE (Body, model=None, AnimatedModel echassien2, [0, 1],
[(World, model=None, 7, 1)]) SETCSTATE (Body, model=None,
AnimatedModel echassien2, [0, 1], [(World, model=None, 7, 1)])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
SETCSTATE (Body, model=None, AnimatedModel champignon, [1], [])
* Tofu * Player tony login !
* Tofu * Level level_0_0 26546976 activated !

Program received signal SIGFPE, Arithmetic exception.
0x7fffe7ca6bb5 in ov_read_filter (vf=0x1fc3120, buffer=0x1ffdb80
, length=value optimized out, bigendianp=0, word=0, sgned=1,
bitstream=0x7fffbc38, filter=0, filter_param=0x0) at
vorbisfile.c:1905 1905  vorbisfile.c: No existe el fichero o el
directorio. in vorbisfile.c 
(gdb) 

I had installed libvorbis-dbg as you can see.
The line 1905 of vorbisfile.c :

$ more +1901 -8 libvorbis-1.3.2/lib/vorbisfile.c 

long channels=ov_info(vf,-1)-channels;
long bytespersample=word * channels;
vorbis_fpu_control fpu;
if(sampleslength/bytespersample)samples=length/bytespersample;

if(samples = 0)
  return OV_EINVAL;

Thanks!

-- 
 .''`.  Tony Palma.
: :' :  PGP/GPG Key ID: 258FFB1A  
`. `'   
  `-Proudly running Debian GNU/Linux


signature.asc
Description: PGP signature