Bug 447422 - Crash with newest glitch-free pulseaudio (pa_init_proplist at pulse/context.c:1206)
Summary: Crash with newest glitch-free pulseaudio (pa_init_proplist at pulse/context.c...
Alias: None
Product: Fedora
Classification: Fedora
Component: pulseaudio
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Lennart Poettering
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2008-05-19 21:11 UTC by Yanko Kaneti
Modified: 2008-09-10 09:03 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2008-09-09 20:45:14 UTC
Type: ---

Attachments (Terms of Use)
gdb trace (3.15 KB, text/plain)
2008-05-19 21:11 UTC, Yanko Kaneti
no flags Details

Description Yanko Kaneti 2008-05-19 21:11:10 UTC
Upgrading from 0.9.10-1 to 0.9.11-0.1.svn20080516 causes xine (configured to use
the pulseaudio plugin) to crash a startup with the attached backtrace.

It could be a xine-lib bug, but I wouldn't know about it. Please accept my
apologies if thats the case.
Hardware is a standard (I think) HDA with usual alsa support.
00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller
(rev 02)

Comment 1 Yanko Kaneti 2008-05-19 21:11:10 UTC
Created attachment 306014 [details]
gdb trace

Comment 2 Lennart Poettering 2008-05-21 14:07:38 UTC
Hmm, this is interesting. Seems the environ[] libc array is not valid in some
way. Could you please do a "p environ" in gdb when this happens? And then a "p
environ[0]" and an "p environ[1]" and so on?

Comment 3 Yanko Kaneti 2008-05-23 07:41:37 UTC
I don't know if this makes any sense but with breakpoint and step it seems the e
= environ assignment is the one that zeros e, while environ is fine. ?

Comment 4 Lennart Poettering 2008-06-04 11:44:33 UTC
Hmm? that doesn't really make sense. After the e = environ both pointers should
point to the same array. 

Could you please do the "p environ[0]" and "p environ[1]"?

Comment 5 Yanko Kaneti 2008-06-04 18:14:38 UTC
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb50f9b90 (LWP 12061)]
0x0890e6bc in pa_init_proplist (p=0x98038e0) at pulse/context.c:1215
1215	    for (e = environ; *e; e++) {
Missing separate debuginfos, use: debuginfo-install keyutils.i386 lame.i386
(gdb) p e
$1 = <value optimized out>
(gdb) p environ[0]
$2 = 0xbfb306f8 "SSH_AGENT_PID=3262"
(gdb) p environ[1]
$3 = 0xbfb3070b "HOSTNAME=d2"

environ seems fine. The last time I did try a -O0 build to see if it made any
difference. This is with 0.9.11-0.3.svn20080529.fc10

Comment 6 Lennart Poettering 2008-06-13 23:42:48 UTC
Hmm, if you really built this stuff with -O0 there shouldn't be any "optimized
out" in the backtrace. 

Comment 7 Yanko Kaneti 2008-06-14 07:42:03 UTC
"The last time" meant around my comment #3. I didn't try -O0 with
0.9.11-0.3.svn20080529.fc10 because it looked the same. I did try building with
the latest gcc updates to see if it made any difference. It didn't.

If you really can't reproduce this, please feel free to close it. Trying it out
is not complicated. Have a running pulseaudio server
# yum install xine xine-lib-pulseaudio
# xine -A pulse

Comment 8 Lennart Poettering 2008-09-09 20:45:14 UTC
Can't reproduce it here. Closing.

Comment 9 Yanko Kaneti 2008-09-10 09:03:32 UTC
FWIW I can still reproduce this with latest pusleaudio and xine lib
these days its at  

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb51c8b90 (LWP 4965)]
0x017a35fc in pa_init_proplist (p=0x85dfe28) at pulsecore/proplist-util.c:47
47	    for (e = environ; *e; e++) {

otherwise not much different symptoms.

Note You need to log in before you can comment on or make changes to this bug.