gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash ChangeLog server/array.cpp


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/array.cpp
Date: Mon, 07 Jan 2008 18:30:16 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  08/01/07 18:30:16

Modified files:
        .              : ChangeLog 
        server         : array.cpp 

Log message:
        in Array constructor take negative length as zero.
        Not correct yet, but at least saves some memory and makes Gnash
        a bit more robust (fixes bug #21975).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.5333&r2=1.5334
http://cvs.savannah.gnu.org/viewcvs/gnash/server/array.cpp?cvsroot=gnash&r1=1.88&r2=1.89

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.5333
retrieving revision 1.5334
diff -u -b -r1.5333 -r1.5334
--- ChangeLog   7 Jan 2008 16:47:24 -0000       1.5333
+++ ChangeLog   7 Jan 2008 18:30:15 -0000       1.5334
@@ -1,5 +1,11 @@
 2008-01-07 Sandro Santilli <address@hidden>
 
+       * server/array.cpp: in Array constructor take negative
+         length as zero. Not correct yet, but at least saves some
+         memory and makes Gnash a bit more robust (fixes bug #21975).
+
+2008-01-07 Sandro Santilli <address@hidden>
+
        * server/fill_style.{cpp,h}: add a matrix argument
          to the constructor taking a bitmap definition.
        * server/parser/BitmapMovieDefinition.cpp: appropriately

Index: server/array.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/array.cpp,v
retrieving revision 1.88
retrieving revision 1.89
diff -u -b -r1.88 -r1.89
--- server/array.cpp    19 Dec 2007 01:57:08 -0000      1.88
+++ server/array.cpp    7 Jan 2008 18:30:15 -0000       1.89
@@ -1411,23 +1411,9 @@
        else if (fn.nargs == 1 && fn.arg(0).is_number() )
        {
                // TODO: limit max size !!
-               unsigned int newSize = fn.arg(0).to_number();
-               ao->resize(newSize);
-#if 0
-               // Create an empty array with the given number of undefined 
elements.
-               //
-               as_value index_number, undef_value;
-               VM& vm = VM::get();
-               int sv = vm.getSWFVersion();
-               string_table& st = vm.getStringTable();
-
-               undef_value.set_undefined();
-               for (int i = 0; i < int(fn.arg(0).to_number()); i++)
-               {
-                       index_number.set_int(i);
-                       
ao->set_member(st.find(index_number.to_string_versioned(sv)), undef_value);
-               }
-#endif
+               int newSize = fn.arg(0).to_number();
+               if ( newSize < 0 ) newSize = 0;
+               else ao->resize(newSize);
        }
        else
        {




reply via email to

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