gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ChangeLog backend/sound_handler_gst.cpp b...


From: Tomas Groth
Subject: [Gnash-commit] gnash ChangeLog backend/sound_handler_gst.cpp b...
Date: Tue, 15 May 2007 09:41:54 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Tomas Groth <tgc>       07/05/15 09:41:54

Modified files:
        .              : ChangeLog 
        backend        : sound_handler_gst.cpp sound_handler_sdl.cpp 
        server/swf     : tag_loaders.cpp 

Log message:
                * backend/sound_handler_{gst,sdl}.cpp: Make soundhandlers more 
robust.
                * server/swf/tag_loaders.cpp: Remember to pass the mp3 data and 
size.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.3218&r2=1.3219
http://cvs.savannah.gnu.org/viewcvs/gnash/backend/sound_handler_gst.cpp?cvsroot=gnash&r1=1.39&r2=1.40
http://cvs.savannah.gnu.org/viewcvs/gnash/backend/sound_handler_sdl.cpp?cvsroot=gnash&r1=1.54&r2=1.55
http://cvs.savannah.gnu.org/viewcvs/gnash/server/swf/tag_loaders.cpp?cvsroot=gnash&r1=1.98&r2=1.99

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.3218
retrieving revision 1.3219
diff -u -b -r1.3218 -r1.3219
--- ChangeLog   15 May 2007 09:35:23 -0000      1.3218
+++ ChangeLog   15 May 2007 09:41:53 -0000      1.3219
@@ -1,3 +1,8 @@
+2007-05-15 Tomas Groth Christensen <address@hidden>
+
+       * backend/sound_handler_{gst,sdl}.cpp: Make soundhandlers more robust.
+       * server/swf/tag_loaders.cpp: Remember to pass the mp3 data and size.
+
 2007-05-15 Sandro Santilli <address@hidden>
 
        * server/movie_instance.cpp (advance): safely handle movies 

Index: backend/sound_handler_gst.cpp
===================================================================
RCS file: /sources/gnash/gnash/backend/sound_handler_gst.cpp,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -b -r1.39 -r1.40
--- backend/sound_handler_gst.cpp       14 May 2007 09:44:19 -0000      1.39
+++ backend/sound_handler_gst.cpp       15 May 2007 09:41:54 -0000      1.40
@@ -20,7 +20,7 @@
 // Based on sound_handler_sdl.cpp by Thatcher Ulrich http://tulrich.com 2003
 // which has been donated to the Public Domain.
 
-/* $Id: sound_handler_gst.cpp,v 1.39 2007/05/14 09:44:19 jgilmore Exp $ */
+/* $Id: sound_handler_gst.cpp,v 1.40 2007/05/15 09:41:54 tgc Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -280,6 +280,12 @@
                return;
        }
 
+       // Make sure sound actually got some data
+       if (sounddata->data_size < 1) {
+               gnash::log_error(_("Trying to play sound with size 0, malformed 
SWF?"));
+               return;
+       }
+
        // Make a "gst_elements" for this sound which is latter placed on the 
vector of instances of this sound being played
        gst_elements* gst_element = new gst_elements;
        if (gst_element == NULL) {

Index: backend/sound_handler_sdl.cpp
===================================================================
RCS file: /sources/gnash/gnash/backend/sound_handler_sdl.cpp,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -b -r1.54 -r1.55
--- backend/sound_handler_sdl.cpp       3 May 2007 06:00:15 -0000       1.54
+++ backend/sound_handler_sdl.cpp       15 May 2007 09:41:54 -0000      1.55
@@ -18,7 +18,7 @@
 // Based on sound_handler_sdl.cpp by Thatcher Ulrich http://tulrich.com 2003
 // which has been donated to the Public Domain.
 
-// $Id: sound_handler_sdl.cpp,v 1.54 2007/05/03 06:00:15 strk Exp $
+// $Id: sound_handler_sdl.cpp,v 1.55 2007/05/15 09:41:54 tgc Exp $
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -259,6 +259,12 @@
                return;
        }
 
+       // Make sure sound actually got some data
+       if (sounddata->data_size < 1) {
+               gnash::log_error(_("Trying to play sound with size 0, malformed 
SWF?"));
+               return;
+       }
+
        // Make a "active_sound" for this sound which is later placed on the 
vector of instances of this sound being played
        active_sound* sound = new active_sound;
 

Index: server/swf/tag_loaders.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/swf/tag_loaders.cpp,v
retrieving revision 1.98
retrieving revision 1.99
diff -u -b -r1.98 -r1.99
--- server/swf/tag_loaders.cpp  13 May 2007 12:20:36 -0000      1.98
+++ server/swf/tag_loaders.cpp  15 May 2007 09:41:54 -0000      1.99
@@ -17,7 +17,7 @@
 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 //
 
-/* $Id: tag_loaders.cpp,v 1.98 2007/05/13 12:20:36 martinwguy Exp $ */
+/* $Id: tag_loaders.cpp,v 1.99 2007/05/15 09:41:54 tgc Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -1287,7 +1287,13 @@
                break;
 
            case sound_handler::FORMAT_MP3:
-               // Handled elsewhere
+               // Decompressed elsewhere
+               data_bytes = in->get_tag_end_position() - in->get_position();
+               data = new unsigned char[data_bytes];
+               for (int i = 0; i < data_bytes; i++)
+               {
+                   data[i] = in->read_u8();
+               }
                break;
 
            case sound_handler::FORMAT_NELLYMOSER:




reply via email to

[Prev in Thread] Current Thread [Next in Thread]