Bug 13604

Summary: Assertion failure when seeking on youtube with pulseaudio backend.
Product: swfdec Reporter: Andreas Henriksson <andreas>
Component: libraryAssignee: swfdec ml <swfdec>
Status: RESOLVED FIXED QA Contact: swfdec ml <swfdec>
Severity: normal    
Priority: medium CC: elreydetodo
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
URL: http://www.youtube.com
Whiteboard:
i915 platform: i915 features:
Attachments: don't assert if pa_stream_drain fail

Description Andreas Henriksson 2007-12-11 11:03:04 UTC
Compile swfdec --with-audio=pa

Play youtube video, seek (move position in the video), see swfdec crash with assertion failure.

Gives the following gdb backtrace:


SWFDEC: WARN : swfdec_net_stream.c(591): swfdec_net_stream_seek: FIXME: restarting audio after seek
SWFDEC: WARN : swfdec_net_stream.c(591): swfdec_net_stream_seek: FIXME: restarting audio after seek
SWFDEC: WARN : swfdec_net_stream.c(591): swfdec_net_stream_seek: FIXME: restarting audio after seek
SWFDEC: WARN : swfdec_net_stream.c(591): swfdec_net_stream_seek: FIXME: restarting audio after seek
SWFDEC: WARN : swfdec_net_stream.c(591): swfdec_net_stream_seek: FIXME: restarting audio after seek
firefox-bin: pulse/operation.c:68: pa_operation_unref: Assertion `o' failed.

Program received signal SIGABRT, Aborted.
[Switching to Thread 0x2b641677d9c0 (LWP 11689)]
0x00002b6413542fd5 in raise () from /lib/libc.so.6
(gdb) 
(gdb) 
(gdb) 
(gdb) 
(gdb) bt
#0  0x00002b6413542fd5 in raise () from /lib/libc.so.6
#1  0x00002b6413544a30 in abort () from /lib/libc.so.6
#2  0x00002b641353c3df in __assert_fail () from /lib/libc.so.6
#3  0x00002aaaafaa7be4 in pa_operation_unref () from /usr/lib/libpulse.so.0
#4  0x00002aaaaf0ddaa6 in swfdec_stream_close ()
   from /opt/swfdec/lib/libswfdec-gtk-0.5.so.4
#5  0x00002aaaaf0ddd78 in audio_removed ()
   from /opt/swfdec/lib/libswfdec-gtk-0.5.so.4
#6  0x00002b6412883a1f in IA__g_closure_invoke (closure=0x2980120, 
    return_value=0x0, n_param_values=2, param_values=0x7fff9bdabc10, 
    invocation_hint=0x7fff9bdabaf0)
    at /build/buildd/glib2.0-2.14.4/gobject/gclosure.c:490
#7  0x00002b64128976e8 in signal_emit_unlocked_R (node=0x2ea7bd0, detail=0, 
    instance=0x2eaaa80, emission_return=0x0, 
    instance_and_params=0x7fff9bdabc10)
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c:2440
#8  0x00002b6412899145 in IA__g_signal_emit_valist (instance=0x2eaaa80, 
    signal_id=<value optimized out>, detail=0, var_args=0x7fff9bdabe90)
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c:2199
#9  0x00002b641289943f in IA__g_signal_emit_by_name (instance=0x2eaaa80, 
    detailed_signal=0x2aaaaf3a988e "audio-removed")
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c:2267
#10 0x00002aaaaf3308f5 in swfdec_audio_remove (audio=0x549a460)
    at swfdec_audio.c:116
#11 0x00002aaaaf35c8bb in swfdec_net_stream_seek ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#12 0x00002aaaaf35cca3 in swfdec_net_stream_do_seek ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#13 0x00002aaaaf314bb4 in swfdec_as_context_run ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#14 0x00002aaaaf3298ae in swfdec_as_object_call_with_security ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#15 0x00002aaaaf352be7 in swfdec_movie_execute ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#16 0x00002aaaaf361052 in swfdec_player_do_action ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#17 0x00002aaaaf363e73 in swfdec_player_perform_actions ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#18 0x00002aaaaf363a08 in swfdec_player_iterate ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#19 0x00002aaaaf363cde in swfdec_player_do_advance ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#20 0x00002aaaaf39d949 in swfdec_marshal_VOID__ULONG_UINT ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#21 0x00002b6412883a1f in IA__g_closure_invoke (closure=0x188c500, 
    return_value=0x0, n_param_values=3, param_values=0x7fff9bdac7a0, 
    invocation_hint=0x7fff9bdac680)
    at /build/buildd/glib2.0-2.14.4/gobject/gclosure.c:490
#22 0x00002b6412897ac8 in signal_emit_unlocked_R (node=0x2ea7670, detail=0, 
    instance=0x2eaaa80, emission_return=0x0, 
    instance_and_params=0x7fff9bdac7a0)
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c:2478
#23 0x00002b6412899145 in IA__g_signal_emit_valist (instance=0x2eaaa80, 
    signal_id=<value optimized out>, detail=0, var_args=0x7fff9bdaca20)
    at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c:2199
#24 0x00002b6412899533 in IA__g_signal_emit (instance=0x2da9, signal_id=11689, 
    detail=6) at /build/buildd/glib2.0-2.14.4/gobject/gsignal.c:2243
#25 0x00002aaaaf3671d2 in swfdec_player_advance ()
   from /opt/swfdec/lib/libswfdec-0.5.so.4
#26 0x00002aaaaf0de478 in swfdec_iterate_dispatch ()
   from /opt/swfdec/lib/libswfdec-gtk-0.5.so.4
#27 0x00002b6412aeae24 in IA__g_main_context_dispatch (context=0x14ba6e0)
    at /build/buildd/glib2.0-2.14.4/glib/gmain.c:2061
#28 0x00002b6412aee10d in g_main_context_iterate (context=0x14ba6e0, block=1, 
    dispatch=1, self=<value optimized out>)
    at /build/buildd/glib2.0-2.14.4/glib/gmain.c:2694
#29 0x00002b6412aee407 in IA__g_main_loop_run (loop=0x1e27b70)
    at /build/buildd/glib2.0-2.14.4/glib/gmain.c:2898
#30 0x00002b640fe76423 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.12.3/gtk/gtkmain.c:1163
#31 0x00000000006b38e5 in ?? ()
#32 0x0000000000c23d6e in ?? ()
#33 0x0000000000447b42 in ?? ()
#34 0x00002b641352f1c4 in __libc_start_main () from /lib/libc.so.6
#35 0x0000000000442d69 in ?? ()
#36 0x00007fff9bdad3f8 in ?? ()
#37 0x0000000000000000 in ?? ()
(gdb)
Comment 1 Riccardo Magliocchetti 2008-02-02 06:27:07 UTC
Andreas, can you please retry with swfdec 0.5.5? Also a new version of pulseaudio is available. 
Comment 2 Andreas Henriksson 2008-02-02 09:22:37 UTC
Testing with pulseaudio 0.9.9 and swfdec 0.5.5, both from debian packages except swfdec rebuilt adding the flag --with-audio=pa.
Visiting youtube and using the seekbar (still) gives this:

gem@amd64:/tmp$ iceweasel -g
GNU gdb 6.7.1-debian
Copyright (C) 2007 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"...
(no debugging symbols found)
Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /usr/lib/iceweasel/firefox-bin -a firefox
(no debugging symbols found)
(no debugging symbols found)
/usr/lib/iceweasel/firefox-bin: Symbol `SSL_ImplementedCiphers' has different size in shared object, consider re-linking
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
(no debugging symbols found)
[New Thread 0x2b52786b0380 (LWP 31244)]
[New Thread 0x40800950 (LWP 31247)]
[New Thread 0x41001950 (LWP 31248)]
[New Thread 0x41802950 (LWP 31249)]
[New Thread 0x42003950 (LWP 31250)]
[New Thread 0x42804950 (LWP 31251)]
[New Thread 0x43005950 (LWP 31252)]
[Thread 0x43005950 (LWP 31252) exited]
[New Thread 0x43806950 (LWP 31253)]
[Thread 0x43806950 (LWP 31253) exited]
[New Thread 0x43806950 (LWP 31254)]
[New Thread 0x43005950 (LWP 31255)]
[Thread 0x43005950 (LWP 31255) exited]
[New Thread 0x44007950 (LWP 31256)]
[New Thread 0x43005950 (LWP 31257)]
[New Thread 0x44808950 (LWP 31258)]
Unsupported movie property style with value ""
Unsupported movie property id with value "active_sharing"
Unsupported movie property name with value "active_sharing"
Unsupported movie property quality with value "high"
Unsupported movie property wmode with value "opaque"
unhandled event 19
Loading stream: http://youtube.com/active_sharing.swf
Unsupported movie property style with value ""
Unsupported movie property id with value "movie_player"
Unsupported movie property name with value "movie_player"
Unsupported movie property quality with value "high"
Unsupported movie property allowfullscreen with value "true"
Unsupported movie property style with value ""
Unsupported movie property id with value "checker"
Unsupported movie property name with value "checker"
Unsupported movie property quality with value "high"
unhandled event 19
Loading stream: http://youtube.com/player_dcad.swf
Loading stream: http://youtube.com/version-check.swf
Loading stream: http://video-stats.video.google.com/crossdomain.xml
SWFDEC: ERROR: swfdec_resource_request.c(75): swfdec_player_request_resource_allow_callback: not allowing access to http://video-stats.video.google.com/s?ns=yt&plid=AARFMAs_9p1otpOVAAAA6BDIQAg&sourceid=y&sdetail=f%3Adir%2Cp%3A%2F&vid=jx4HbVzSeNwxQnLPSJ-AeQC&docid=H9qgU5bCDzQ&el=detailpage&e=h&rt=0&len=119&et=0&yttk=1&st=0
Loading stream: http://youtube.com/tracker?p=0&tp=0&w=1&i=oJSmJYLnE0bqArhlWnt%5Fx43B8gpjvz5lf%5Fv5kYB%5Fjlk0Cti0qDNt2g%3D%3D
Loading stream: http://74.125.13.94/get_video?video_id=H9qgU5bCDzQ&origin=sjc-v171.sjc.youtube.com
Loading stream: http://video-stats.video.google.com/s?ns=yt&plid=AARFMAs_9p1otpOVAAAA6BDIQAg&sourceid=y&sdetail=f%3Adir%2Cp%3A%2F&vid=jx4HbVzSeNwxQnLPSJ-AeQC&docid=H9qgU5bCDzQ&el=detailpage&e=h&rt=1.6&len=119&bc=94120&bt=0.3&et=0.08&fv=WIN%209%2C0%2C100%2C0&bd=92672&st=0.08
firefox-bin: pulse/operation.c:68: pa_operation_unref: Assertion `o' failed.

Program received signal SIGABRT, Aborted.
[Switching to Thread 0x2b52786b0380 (LWP 31244)]
0x00002b52756c8025 in raise () from /lib/libc.so.6
(gdb) bt
#0  0x00002b52756c8025 in raise () from /lib/libc.so.6
#1  0x00002b52756c9a80 in abort () from /lib/libc.so.6
#2  0x00002b52756c142f in __assert_fail () from /lib/libc.so.6
#3  0x00002aaab4785be4 in pa_operation_unref () from /usr/lib/libpulse.so.0
#4  0x00002b5274a04a1f in IA__g_closure_invoke (closure=0x341ddc0, 
    return_value=0x0, n_param_values=2, param_values=0x7fff39cf0cf0, 
    invocation_hint=0x7fff39cf0bd0)
    at /tmp/buildd/glib2.0-2.14.5/gobject/gclosure.c:490
#5  0x00002b5274a186e8 in signal_emit_unlocked_R (node=0x23c9160, detail=0, 
    instance=0x2e823e0, emission_return=0x0, 
    instance_and_params=0x7fff39cf0cf0)
    at /tmp/buildd/glib2.0-2.14.5/gobject/gsignal.c:2440
#6  0x00002b5274a1a145 in IA__g_signal_emit_valist (instance=0x2e823e0, 
    signal_id=<value optimized out>, detail=0, var_args=0x7fff39cf0f70)
    at /tmp/buildd/glib2.0-2.14.5/gobject/gsignal.c:2199
#7  0x00002b5274a1a43f in IA__g_signal_emit_by_name (instance=0x2e823e0, 
    detailed_signal=0x2aaab40a6ed4 "audio-removed")
    at /tmp/buildd/glib2.0-2.14.5/gobject/gsignal.c:2267
#8  0x00002aaab4046fea in swfdec_audio_remove (audio=0x4b51d20)
    at swfdec_audio.c:120
#9  0x00002aaab4069215 in swfdec_net_stream_seek (stream=0x3aea010, 
    secs=4.469483568075117) at swfdec_net_stream.c:592
#10 0x00002aaab40314ac in swfdec_as_context_run (context=0x2e823e0)
    at swfdec_as_context.c:845
#11 0x00002aaab40626e5 in swfdec_movie_execute (movie=0x3aef2a0, 
    condition=SWFDEC_EVENT_ENTER) at swfdec_movie.c:506
#12 0x00002aaab406f5e6 in swfdec_player_perform_actions (player=0x2e823e0)
    at swfdec_player.c:484
#13 0x00002aaab407250b in swfdec_player_iterate (timeout=<value optimized out>)
    at swfdec_player.c:1314
#14 0x00002aaab4070f4c in swfdec_player_do_advance (player=0x2e823e0, 
    msecs=<value optimized out>, audio_samples=220) at swfdec_player.c:1376
#15 0x00002b5274a04a1f in IA__g_closure_invoke (closure=0x25f59a0, 
    return_value=0x0, n_param_values=3, param_values=0x7fff39cf1590, 
    invocation_hint=0x7fff39cf1470)
    at /tmp/buildd/glib2.0-2.14.5/gobject/gclosure.c:490
#16 0x00002b5274a18ac8 in signal_emit_unlocked_R (node=0x18a9390, detail=0, 
    instance=0x2e823e0, emission_return=0x0, 
    instance_and_params=0x7fff39cf1590)
    at /tmp/buildd/glib2.0-2.14.5/gobject/gsignal.c:2478
#17 0x00002b5274a1a145 in IA__g_signal_emit_valist (instance=0x2e823e0, 
    signal_id=<value optimized out>, detail=0, var_args=0x7fff39cf1810)
    at /tmp/buildd/glib2.0-2.14.5/gobject/gsignal.c:2199
#18 0x00002b5274a1a533 in IA__g_signal_emit (instance=0x7a0c, signal_id=31244, 
    detail=6) at /tmp/buildd/glib2.0-2.14.5/gobject/gsignal.c:2243
#19 0x00002aaaafb2c1b8 in swfdec_iterate_dispatch (
    source_=<value optimized out>, callback=<value optimized out>, 
    user_data=<value optimized out>) at swfdec_source.c:109
#20 0x00002b5274c6beb4 in IA__g_main_context_dispatch (context=0x14ba680)
    at /tmp/buildd/glib2.0-2.14.5/glib/gmain.c:2061
#21 0x00002b5274c6f19d in g_main_context_iterate (context=0x14ba680, block=1, 
    dispatch=1, self=<value optimized out>)
    at /tmp/buildd/glib2.0-2.14.5/glib/gmain.c:2694
#22 0x00002b5274c6f497 in IA__g_main_loop_run (loop=0x158c0c0)
    at /tmp/buildd/glib2.0-2.14.5/glib/gmain.c:2898
#23 0x00002b5271f31883 in IA__gtk_main ()
    at /build/buildd/gtk+2.0-2.12.7/gtk/gtkmain.c:1163
#24 0x00000000006b38e5 in ?? ()
#25 0x0000000000c23d6e in ?? ()
#26 0x0000000000447b42 in ?? ()
#27 0x00002b52756b41c4 in __libc_start_main () from /lib/libc.so.6
#28 0x0000000000442d69 in ?? ()
#29 0x00007fff39cf2178 in ?? ()
#30 0x0000000000000000 in ?? ()



Are you having problems reproducing this or where there any indication that any change in either swfdec or pulseaudio was supposed to have fixed this?

Comment 3 Andreas Henriksson 2008-02-02 10:05:10 UTC
As an additional note, I've also tried rebuilding with the patch you posted at http://lists.freedesktop.org/archives/swfdec/2008-February/001214.html which works around the assertion failure but intead gives a segmentation fault when seeking on youtube.

Comment 4 Riccardo Magliocchetti 2008-02-02 12:31:05 UTC
Created attachment 14094 [details] [review]
don't assert if pa_stream_drain fail
Comment 5 Riccardo Magliocchetti 2008-02-02 12:47:11 UTC
Andreas, i see a small progress with my patch, now i can seek back and forth for some seconds before segfaulting. Still not ok :(

With the patch i get two different traces, depends on different youtube player version i suppose.

The first:

Loading stream: http://youtube.com/version-check.swf
Loading stream: http://youtube.com/player_dcad.swf
[New Thread 0xb06feb90 (LWP 26818)]
[Thread 0xb06feb90 (LWP 26818) exited]
Loading stream: http://youtube.com/tracker?p=0&i=wooV%5Fc804%5Fp7cGV6%5FvqdTKx9LwBNu3uK1tNHmt2g3om5J7RXHQRRnA%3D%3D&tp=0&w=1
Loading stream: http://video-stats.video.google.com/crossdomain.xml
SWFDEC: ERROR: swfdec_resource_request.c(75): swfdec_player_request_resource_allow_callback: not allowing access to http://video-stats.video.google.com/s?ns=yt&plid=AARFMuK9328uJaNLAAAA4YBIQAA&vid=jafcBD1RdyMZk4096frukQU&docid=EEIp0qPBbEI&sw=0.05&el=detailpage&e=h&len=80&rt=0&st=0&et=0&yttk=1
Loading stream: http://ad.doubleclick.net/crossdomain.xml
Loading stream: http://74.125.97.86/get_video?video_id=EEIp0qPBbEI&origin=nyc-v77.nyc.youtube.com
Loading stream: http://ad.doubleclick.net/879366/DartShellPlayer7_3_04.swf
Loading stream: http://ad.doubleclick.net/879366/DartShellPlayer7_3_04.swf
Loading stream: http://video-stats.video.google.com/s?ns=yt&plid=AARFMuK9328uJaNLAAAA4YBIQAA&vid=jafcBD1RdyMZk4096frukQU&docid=EEIp0qPBbEI&sw=0.05&el=detailpage&e=h&fv=WIN%209%2C0%2C100%2C0&bt=0.8&len=80&rt=2.2&bc=112944&st=0.125&et=0.125&bd=99912
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state

(gecko:26790): Swfdec-CRITICAL **: swfdec_audio_render: assertion `SWFDEC_IS_AUDIO (audio)' failed
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state

(gecko:26790): Swfdec-CRITICAL **: swfdec_audio_render: assertion `SWFDEC_IS_AUDIO (audio)' failed

(gecko:26790): Swfdec-CRITICAL **: swfdec_audio_render: assertion `SWFDEC_IS_AUDIO (audio)' failed
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb70836c0 (LWP 26790)]
0xb0cb20b9 in swfdec_audio_render (audio=0x39, dest=0xb7d17f0, start_offset=0, 
    n_samples=22050) at swfdec_audio.c:171
171	  g_return_if_fail (SWFDEC_IS_AUDIO (audio));
(gdb) bt full
#0  0xb0cb20b9 in swfdec_audio_render (audio=0x39, dest=0xb7d17f0, 
    start_offset=0, n_samples=22050) at swfdec_audio.c:171
	__t = <value optimized out>
	__PRETTY_FUNCTION__ = "swfdec_audio_render"
#1  0xb0db7cf8 in stream_write_callback (pa=0xb717bc0, bytes=88200, 
    data=0xb717b20) at swfdec_playback.c:87
	samples = 22050
	err = <value optimized out>

Second one:

Loading stream: http://youtube.com/player2.swf
Loading stream: http://74.125.13.27/get_video?video_id=42hgPLL8IrA&origin=nyc-v82.nyc.youtube.com
Loading stream: http://video-stats.video.google.com/s?ns=yt&plid=AARFMtiWYXRxY26uAAAAoAACQAA&vid=jafcBD1RdyMZk4096frukQU&docid=42hgPLL8IrA&sw=0.05&el=detailpage&e=h&len=83&et=0.04&fv=WIN%209%2C0%2C100%2C0&rt=3.3&bc=31856&bt=0.3&bd=28960&st=0.04
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state

(gecko:26720): Swfdec-CRITICAL **: swfdec_audio_render: assertion `SWFDEC_IS_AUDIO (audio)' failed
PA stream drain failed: Bad state
PA stream drain failed: Bad state

(gecko:26720): Swfdec-CRITICAL **: swfdec_audio_render: assertion `SWFDEC_IS_AUDIO (audio)' failed
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state
PA stream drain failed: Bad state

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb709c6c0 (LWP 26720)]
0xb754a15e in IA__g_type_check_instance_is_a (type_instance=0xbbbbd90, 
    iface_type=152559344) at /build/buildd/glib2.0-2.14.5/gobject/gtype.c:3115
3115	/build/buildd/glib2.0-2.14.5/gobject/gtype.c: No such file or directory.
	in /build/buildd/glib2.0-2.14.5/gobject/gtype.c
(gdb) 
(gdb) bt full
#0  0xb754a15e in IA__g_type_check_instance_is_a (type_instance=0xbbbbd90, 
    iface_type=152559344) at /build/buildd/glib2.0-2.14.5/gobject/gtype.c:3115
	node = (TypeNode *) 0x73696874
	iface = (TypeNode *) 0x917def0
	check = <value optimized out>
#1  0xb0b6d0cf in swfdec_audio_render (audio=0xbbbbd90, dest=0xbd37208, 
    start_offset=0, n_samples=22050) at swfdec_audio.c:171
	__t = 1936287860
	__PRETTY_FUNCTION__ = "swfdec_audio_render"
#2  0xb15d0cf8 in stream_write_callback (pa=0xbbb8810, bytes=88200, 
    data=0xbbb8770) at swfdec_playback.c:87
	samples = 22050
	err = <value optimized out>
#3  0xb15a4397 in ?? () from /usr/lib/libpulse.so.0
No symbol table info available.
Comment 6 Riccardo Magliocchetti 2008-02-12 03:17:23 UTC
With latest git d3f04841dc19d9c2490ae22bd1fd4d4ddae84881 and my patch it does not segfault anymore.
Comment 7 Riccardo Magliocchetti 2008-02-12 03:58:42 UTC
Well it works without problems and audio without pulseaudio running... sorry!

So this is what i actually get with pulseaudio running:

(gecko:12419): Swfdec-CRITICAL **: swfdec_audio_render: assertion `SWFDEC_IS_AUDIO (audio)' failed

(gecko:12419): Swfdec-CRITICAL **: swfdec_audio_render: assertion `SWFDEC_IS_AUDIO (audio)' failed

(gecko:12419): Swfdec-CRITICAL **: swfdec_audio_render: assertion `SWFDEC_IS_AUDIO (audio)' failed

(gecko:12419): Swfdec-CRITICAL **: swfdec_audio_render: assertion `SWFDEC_IS_AUDIO (audio)' failed

Program received signal SIGSEGV, Segmentation fault.
---Type <return> to continue, or q <return> to quit---
[Switching to Thread 0xb701c9e0 (LWP 12419)]
0xb74465f4 in g_hash_table_foreach () from /usr/lib/libglib-2.0.so.0
(gdb) bt full
#0  0xb74465f4 in g_hash_table_foreach () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#1  0xb131fa2e in swfdec_as_object_collect (object=0xaa801b8)
    at swfdec_as_object.c:818
	__PRETTY_FUNCTION__ = "swfdec_as_object_collect"
#2  0xb130f572 in swfdec_as_context_remove_objects (key=0xaa801b8, 
    value=0xaa801b8, debugger=0x0) at swfdec_as_context.c:275
	__PRETTY_FUNCTION__ = "swfdec_as_context_remove_objects"
#3  0xb7446f25 in ?? () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#4  0x0aa801b8 in ?? ()
No symbol table info available.
#5  0x0aa801b8 in ?? ()
No symbol table info available.
#6  0x00000000 in ?? ()
No symbol table info available.

This is what i get in pulseaudio:

W: sink-input.c: Failed to create sink input: too many inputs per sink.
W: sink-input.c: Failed to create sink input: too many inputs per sink.
W: sink-input.c: Failed to create sink input: too many inputs per sink.
W: sink-input.c: Failed to create sink input: too many inputs per sink.
Comment 8 Eric Anholt 2008-04-08 21:07:45 UTC
Fix pushed.  Thanks!

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.