[MPlayer-users] [BUG] crash with incorrect config file

Diego Biurrun diego at biurrun.de
Mon Mar 17 03:18:21 CET 2003


Hi!

To watch the movie

http://www.blinkenlights.de/download/blinkenlights-arcade-video-352x264.mp4

without artifacts I tried to put

lavdopts bug=1024

in a movie specific config file.  That is a syntax error, it has to be

lavdopts= bug=1024

The problem is that MPlayer crashes on encountering a line like that in 
a config file.  It's even easier to reproduce by putting

wrong option

in ~/.mplayer/config.  MPlayer crashes almost immediately.

Below is the mplayer -v output and a gbd backtrace.

Diego



MPlayer 0.90-CVS-030317-02:39-2.95.4 (C) 2000-2003 Arpad Gereoffy (see DOCS)

CPU: Advanced Micro Devices K6-2+/K6-III+ Sharptooth (Family: 5, 
Stepping: 0)
Detected cache-line size is 32 bytes
CPUflags:  MMX: 1 MMX2: 0 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX 3DNow 3DNowEx

Reading config file /etc/mplayer.conf: No such file or directory
Reading config file /home/diego/.mplayer/config
Segmentation fault



(gdb) run -v /var/tmp/FinalFantasy.avi
Starting program: /usr/src/mplayer/0_90/mplayer -v /var/tmp/FinalFantasy.avi
[New Thread 1024 (LWP 11366)]
Using GNU internationalization
Original domain: messages
Original dirname: /usr/share/locale
Current domain: mplayer
Current dirname: /usr/local/share/locale


MPlayer 0.90-CVS-030317-02:39-2.95.4 (C) 2000-2003 Arpad Gereoffy (see DOCS)

CPU: Advanced Micro Devices K6-2+/K6-III+ Sharptooth (Family: 5, 
Stepping: 0)
Detected cache-line size is 32 bytes
CPUflags:  MMX: 1 MMX2: 0 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX 3DNow 3DNowEx

Reading config file /etc/mplayer.conf: No such file or directory
Reading config file /home/diego/.mplayer/config

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 11366)]
0x40367f7e in vfprintf () from /lib/libc.so.6
(gdb) bt
#0  0x40367f7e in vfprintf () from /lib/libc.so.6
#1  0x403838ca in vsnprintf () from /lib/libc.so.6
#2  0x0807006a in mp_msg_c (x=2817,
     format=0x829ba80 "Option %s need a parameter at line %d\n") at 
mp_msg.c:65
#3  0x08082c8f in m_config_parse_config_file (config=0x8be35a0,
     conffile=0x8be8390 "/home/diego/.mplayer/config") at parser-cfg.c:124
#4  0x0806a225 in parse_cfgfiles (conf=0x8be35a0) at mplayer.c:518
#5  0x0806a827 in main (argc=3, argv=0xbffffa74) at mplayer.c:725
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x40367f5e to 0x40367f9e:
0x40367f5e <vfprintf+6662>:	(bad)
0x40367f5f <vfprintf+6663>:	ljmp   *(%ebx)
0x40367f61 <vfprintf+6665>:	mov    $0xfffffb70,%ebp
0x40367f66 <vfprintf+6670>:	mov    %esi,%esp
0x40367f68 <vfprintf+6672>:	jmp    0x403680c4 <vfprintf+7020>
0x40367f6d <vfprintf+6677>:	lea    0x0(%esi),%esi
0x40367f70 <vfprintf+6680>:	mov    0xfffffaf8(%ebp),%edi
0x40367f76 <vfprintf+6686>:	mov    $0x0,%al
0x40367f78 <vfprintf+6688>:	cld
0x40367f79 <vfprintf+6689>:	mov    $0xffffffff,%ecx
0x40367f7e <vfprintf+6694>:	repnz scas %es:(%edi),%al
0x40367f80 <vfprintf+6696>:	not    %ecx
0x40367f82 <vfprintf+6698>:	lea    0xffffffff(%ecx),%edi
0x40367f85 <vfprintf+6701>:	jmp    0x403680c4 <vfprintf+7020>
0x40367f8a <vfprintf+6706>:	lea    0x0(%esi),%esi
0x40367f90 <vfprintf+6712>:	mov    0xfffffaf8(%ebp),%edx
0x40367f96 <vfprintf+6718>:	mov    %edx,0xfffffb60(%ebp)
0x40367f9c <vfprintf+6724>:	lea    0xfffffb64(%ebp),%eax
End of assembler dump.
(gdb) info all-registers
eax            0x40367e00	1077313024
ecx            0xffffffff	-1
edx            0xbfffda53	-1073751469
ebx            0x40433e48	1078148680
esp            0xbfffd2f4	0xbfffd2f4
ebp            0xbfffd8fc	0xbfffd8fc
esi            0x7	7
edi            0x8	8
eip            0x40367f7e	0x40367f7e
eflags         0x210246	2163270
cs             0x23	35
ss             0x2b	43
ds             0x2b	43
es             0x2b	43
fs             0x0	0
gs             0x0	0
st0            0	(raw 0x00000000000000000000)
st1            0	(raw 0x00000000000000000000)
st2            0	(raw 0x00000000000000000000)
st3            0	(raw 0x00000000000000000000)
st4            0	(raw 0x00000000000000000000)
st5            0	(raw 0x00000000000000000000)
st6            0	(raw 0x00000000000000000000)
st7            1	(raw 0x3fff8000000000000000)
fctrl          0x37f	895
fstat          0x0	0
ftag           0xffff	65535
fiseg          0x23	35
fioff          0x8081256	134746710
foseg          0x2b	43
fooff          0xbfffe5c4	-1073748540
fop            0x35d	861
xmm0           {f = {0x0, 0x0, 0x0, 0x0}}	{f = {-nan(0x7fffff),
     -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm1           {f = {0x0, 0x0, 0x0, 0x0}}	{f = {-nan(0x7fffff),
     -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm2           {f = {0x0, 0x0, 0x0, 0x0}}	{f = {-nan(0x7fffff),
     -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm3           {f = {0x0, 0x0, 0x0, 0x0}}	{f = {-nan(0x7fffff),
     -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm4           {f = {0x0, 0x0, 0x0, 0x0}}	{f = {-nan(0x7fffff),
     -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm5           {f = {0x0, 0x0, 0x0, 0x0}}	{f = {-nan(0x7fffff),
     -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm6           {f = {0x0, 0x0, 0x0, 0x0}}	{f = {-nan(0x7fffff),
     -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
xmm7           {f = {0x0, 0x0, 0x0, 0x0}}	{f = {-nan(0x7fffff),
     -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
mxcsr          0x1f80	8064
orig_eax       0xffffffff	-1




More information about the MPlayer-users mailing list