On Wed, Dec 13, 2006 at 05:53:03PM +0100, A Mennucc wrote:
> 
> here is some more info:
> 
> $ gdb ./mplayer
> This GDB was configured as "x86_64-linux-gnu"...Using host libthread_db
> library "/lib/libthread_db.so.1".
> 
> (gdb) run ~/mplayer/bench/foobar.mpeg
> 
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 47190863550720 (LWP 1368)]
> MC_put_o_16_mmxext (dest=0xcb5f00 "", ref=0x0, stride=304, height=16)
>     at motion_comp_mmx.c:546
> 546             movq_m2r (*ref, mm0);
> (gdb) li
> 541
> 542     static inline void MC_put1_16 (int height, uint8_t * dest, const
> uint8_t * ref,
> 543                                    const int stride)
> 544     {
> 545         do {
> 546             movq_m2r (*ref, mm0);
> 547             movq_m2r (*(ref+8), mm1);
> 548             ref += stride;
> 549             movq_r2m (mm0, *dest);
> 550             movq_r2m (mm1, *(dest+8));
> 
> we should understand why  ref==0
> 
> anyway I will add an assert

  O_o *blink* *blink*

  do you know that assert is a macro that may be disabled if for some
reason the build system defines NDEBUG ?!

  like I said in my report, other software in the debian archive that
use the libmpeg2 do not segfault here, hence I suspect a bug in the
embeded libmpeg2 mplayer ships.

  Statically linked or not, you should link against the debian one,
rather than the embededed one to avoid such problems, and benefit from
the audits debian already do on its own libmpeg2.

  but please, give me a break, an assert is everything but a fix.

-- 
·O·  Pierre Habouzit
··O                                                [EMAIL PROTECTED]
OOO                                                http://www.madism.org

Attachment: pgp7MjQTlNCVc.pgp
Description: PGP signature

Reply via email to