bugGnash - The GNU Flash player - Bugs: bug #18207, segfault, SDL_sound_handler (0.7.2)

 
 

bug #18207: segfault, SDL_sound_handler (0.7.2)

Submitted by:  Deanna Phillips <deanna>
Submitted on:  Sun 05 Nov 2006 03:57:08 PM UTC  
 
Category: soundSeverity: 5 - Blocker
Release: NoneStatus: Fixed
Privacy: PublicAssigned to: Tomas Groth <tgc>
Open/Closed: Closed

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

(Jump to the original submission Jump to the original submission)

Thu 09 Nov 2006 12:42:24 AM UTC, comment #13:

well, guys, can we close this and go talk in some other place ? :P
... please file a bug for the ESC thing if feel like discussing it

(trying to keep order here)

btw, other problems in sdl are in bug #18236 now... if you don't find another place to go (dunno why I feel so hilarious tonite)

Sandro Santilli <strk>
Project Member
Thu 09 Nov 2006 12:37:20 AM UTC, comment #12:

As far as I can tell, it never worked anyway. Did you manage to have it work ? My fix correctly handles ESC, it's just that for some reason (at least under GTK), gtk_main_quit() causes a core dump when called from the keyboard handler.

Rob Savoye <rsavoye>
Project Administrator
Wed 08 Nov 2006 11:57:13 PM UTC, comment #11:

Seems fixed to me; tested with elvis and taters.

I miss the escape key though. Was removing it necessary?

Deanna Phillips <deanna>
Wed 08 Nov 2006 05:50:20 PM UTC, comment #10:

I confirm it is fixed for me. Deanna ?

Sandro Santilli <strk>
Project Member
Wed 08 Nov 2006 03:46:50 PM UTC, comment #9:

Should now be fixed in both 0.7.2 and head. (also the horse-animation hanging is fixed)

Tomas Groth <tgc>In charge of this item.
Wed 08 Nov 2006 11:49:14 AM UTC, comment #8:

Same backtrace playing elvis.swf. It occurs at about the end.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1122634672 (LWP 32101)]
0x40639f70 in SDL_MixAudio () from /usr/lib/libSDL-1.2.so.0
(gdb) date
Undefined command: "date". Try "help".
(gdb) bt
#0 0x40639f70 in SDL_MixAudio () from /usr/lib/libSDL-1.2.so.0
#1 0x400b8712 in sdl_audio_callback (udata=0x8055bd0, stream=0x8182800 "",
buffer_length_in=2048)
at /home/strk/src/gnash/gnash-0.7.2-branch/backend/sound_handler_sdl.cpp:904
#2 0x40636d29 in SDL_RunAudio () from /usr/lib/libSDL-1.2.so.0
#3 0x4068324b in SDL_RunThread () from /usr/lib/libSDL-1.2.so.0
#4 0x4068345f in SDL_KillThread () from /usr/lib/libSDL-1.2.so.0

Sandro Santilli <strk>
Project Member
Wed 08 Nov 2006 10:29:09 AM UTC, comment #7:

Bug still present after Thomas commits (0.7.2):

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1117588400 (LWP 4243)]
0x40639f70 in SDL_MixAudio () from /usr/lib/libSDL-1.2.so.0
(gdb) bt
#0 0x40639f70 in SDL_MixAudio () from /usr/lib/libSDL-1.2.so.0
#1 0x400b8712 in sdl_audio_callback (udata=0x8050510, stream=0x81157e8 "",
buffer_length_in=2048)
at /home/strk/src/gnash/gnash-0.7.2-branch/backend/sound_handler_sdl.cpp:904
#2 0x40636d29 in SDL_RunAudio () from /usr/lib/libSDL-1.2.so.0
#3 0x4068324b in SDL_RunThread () from /usr/lib/libSDL-1.2.so.0
#4 0x4068345f in SDL_KillThread () from /usr/lib/libSDL-1.2.so.0
#5 0x40b7eb63 in start_thread () from /lib/tls/libpthread.so.0
#6 0x414f018a in clone () from /lib/tls/libc.so.6

Sandro Santilli <strk>
Project Member
Mon 06 Nov 2006 10:55:52 PM UTC, comment #6:

sdl/mad is fixed, sdl/ffmpeg is still broken for me
(hugly sound - noise - and a final segfault)

(gdb) bt
#0 0x40634f70 in SDL_MixAudio () from /usr/lib/libSDL-1.2.so.0
#1 0x400b81e6 in sdl_audio_callback (udata=0x8055bd0, stream=0x80c0168 "",
buffer_length_in=2048)
at /home/strk/src/gnash/gnash-0.7.2-branch/backend/sound_handler_sdl.cpp:869
#2 0x40631d29 in SDL_RunAudio () from /usr/lib/libSDL-1.2.so.0

Sandro Santilli <strk>
Project Member
Sun 05 Nov 2006 09:11:20 PM UTC, comment #5:

Also fails with sdl/mad !

ERROR: Error while decoding MP3-stream, MAD error: 565
....
ERROR: Error while decoding MP3-stream, MAD error: 529
....
ERROR: Error while decoding MP3-stream, MAD error: 259
...

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1109392304 (LWP 26569)]
0x402cbf70 in SDL_MixAudio () from /usr/lib/libSDL-1.2.so.0
(gdb) bt
#0 0x402cbf70 in SDL_MixAudio () from /usr/lib/libSDL-1.2.so.0
#1 0x40076ac3 in sdl_audio_callback (udata=0x8055bd0,
stream=0x80c2f68 "\021\003Mlœ\v\210\037\200)Ž", buffer_length_in=2048)
at /home/strk/src/gnash/gnash-0.7.2-branch/backend/sound_handler_sdl.cpp:862
#2 0x402c8d29 in SDL_RunAudio () from /usr/lib/libSDL-1.2.so.0

Sandro Santilli <strk>
Project Member
Sun 05 Nov 2006 06:04:51 PM UTC, comment #4:

The patch below "postpones" the segfault...

diff -U2 -r1.29.2.3 sound_handler_sdl.cpp
--- backend/sound_handler_sdl.cpp 3 Nov 2006 11:14:27 -0000 1.29.2.3
+++ backend/sound_handler_sdl.cpp 5 Nov 2006 18:03:58 -0000
@@ -848,5 +848,5 @@
// When the current sound has enough decoded data to fill
// the buffer, we do just that.
- } else if (sound->raw_data_size - sound->raw_position >= buffer_length ) {
+ } else if (sound->raw_data_size - sound->raw_position > buffer_length ) {

// If the volume needs adjustments we call a function to do that

Sandro Santilli <strk>
Project Member
Sun 05 Nov 2006 04:43:22 PM UTC, comment #3:

I do can reproduce it. Can also be reproduced with -r2 (to make testcase simpler / no video)

Sandro Santilli <strk>
Project Member
Sun 05 Nov 2006 04:41:25 PM UTC, comment #2:

direct download here:

http://deanna.freeshell.org/taters.swf

Deanna Phillips <deanna>
Sun 05 Nov 2006 04:26:07 PM UTC, comment #1:

The movie is here:

http://www.albinoblacksheep.com/flash/taters.php

I can't reproduce this in the plugin, possibly because I don't get sound in the plugin (see bug 18154)

Deanna Phillips <deanna>
Sun 05 Nov 2006 03:57:08 PM UTC, original submission:

This seems to only happen when I press escape in the gnash window while playing this particular movie in standalone gnash. It's just a small-ish flash with sound from albinoblacksheep that I've been using for testing a while. Attached here.

[/usr/ports/mystuff/www/gnash/w-gnash-no-propolice-110506/gnash/gui/.libs] poa-alpina% gdb gnash
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-unknown-openbsd4.0"...
(gdb) set args ~/taters.swf
(gdb) run
Starting program: /usr/ports/mystuff/www/gnash/w-gnash-no-propolice-110506/gnash/gui/.libs/gnash ~/taters.swf
[New process 2378, thread 0x82a0f400]
[New process 2378, thread 0x8590c800]

Program received signal SIGSEGV, Segmentation fault.
[Switching to process 2378, thread 0x82a0f400]
0x05b9d5b2 in memcpy () from /usr/lib/libc.so.40.0
(gdb) bt
#0 0x05b9d5b2 in memcpy () from /usr/lib/libc.so.40.0
#1 0x053c034e in SDL_sound_handler::fill_stream_data(void*, int, int, int) (this=0x84487100, data=0x806bd400,
data_bytes=261, sample_count=-1, handle_id=0) at sound_handler_sdl.cpp:210
#2 0x0a805a93 in gnash::SWF::tag_loaders::sound_stream_block_loader(gnash::stream, gnash::SWF::tag_type, gnash::movie_definition) (in=0x8b65aea0, tag=SOUNDSTREAMBLOCK, m=0x87dee800) at swf/tag_loaders.cpp:1798
#3 0x0a830be1 in gnash::movie_def_impl::read_all_swf() (this=0x87dee800) at movie_def_impl.cpp:887
#4 0x0a82d867 in gnash::MovieLoader::execute(void*) (arg=0x87dee800) at movie_def_impl.cpp:88
#5 0x0ee55fbb in _thread_start () at /usr/src/lib/libpthread/uthread/uthread_create.c:244
#6 0x0000001f in ?? ()
#7 0x00000000 in ?? ()
(gdb) kill
Kill the program being debugged? (y or n) y
(gdb)

Deanna Phillips <deanna>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

Do you think this task is very important?
If so, you can click here to add your encouragement to it.
This task has 0 encouragements so far.

Only logged-in users can vote.

 

Please enter the title of George Orwell's famous dystopian book (it's a date):

 

 

Follow 11 latest changes.

Date Changed By Updated Field Previous Value => Replaced By
Thu 09 Nov 2006 12:42:24 AM UTCstrkStatusReady For Test=>Fixed
  Open/ClosedOpen=>Closed
Wed 08 Nov 2006 03:46:50 PM UTCtgcStatusIn Progress=>Ready For Test
Mon 06 Nov 2006 10:55:52 PM UTCstrkStatusReady For Test=>In Progress
Mon 06 Nov 2006 09:30:55 PM UTCtgcStatusFixed=>Ready For Test
  Open/ClosedClosed=>Open
Mon 06 Nov 2006 09:03:46 PM UTCtgcStatusConfirmed=>Fixed
  Open/ClosedOpen=>Closed
Sun 05 Nov 2006 04:43:22 PM UTCstrkStatusNone=>Confirmed
Sun 05 Nov 2006 04:02:08 PM UTCstrkSeverity3 - Normal=>5 - Blocker
  Assigned toNone=>tgc

Back to the top


Powered by Savane 3.1-cleanup1