[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/vm/ASHandlers.cpp
From: |
Sandro Santilli |
Subject: |
[Gnash-commit] gnash ChangeLog server/vm/ASHandlers.cpp |
Date: |
Tue, 27 Nov 2007 17:36:40 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Sandro Santilli <strk> 07/11/27 17:36:40
Modified files:
. : ChangeLog
server/vm : ASHandlers.cpp
Log message:
always resize the vector passed as third argument to GuessEncoding so
to contain at least one element each character in the string (not fully
tested but fixes an invalid offset access with panda.swf).
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4985&r2=1.4986
http://cvs.savannah.gnu.org/viewcvs/gnash/server/vm/ASHandlers.cpp?cvsroot=gnash&r1=1.162&r2=1.163
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4985
retrieving revision 1.4986
diff -u -b -r1.4985 -r1.4986
--- ChangeLog 27 Nov 2007 15:39:40 -0000 1.4985
+++ ChangeLog 27 Nov 2007 17:36:39 -0000 1.4986
@@ -1,5 +1,13 @@
2007-11-27 Sandro Santilli <address@hidden>
+ * server/vm/ASHandlers.cpp (ActionMbSubString, ActionMbLength):
+ always resize the vector passed as third argument to
+ GuessEncoding so to contain at least one element each
+ character in the string (not fully tested but fixes
+ an invalid offset access with panda.swf).
+
+2007-11-27 Sandro Santilli <address@hidden>
+
* server/asobj/Object.cpp (object_registerClass): hopefully
got arguments index correctly this time (in error messages).
Index: server/vm/ASHandlers.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/vm/ASHandlers.cpp,v
retrieving revision 1.162
retrieving revision 1.163
diff -u -b -r1.162 -r1.163
--- server/vm/ASHandlers.cpp 24 Nov 2007 17:21:45 -0000 1.162
+++ server/vm/ASHandlers.cpp 27 Nov 2007 17:36:40 -0000 1.163
@@ -17,7 +17,7 @@
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
//
-/* $Id: ASHandlers.cpp,v 1.162 2007/11/24 17:21:45 strk Exp $ */
+/* $Id: ASHandlers.cpp,v 1.163 2007/11/27 17:36:40 strk Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -1556,6 +1556,7 @@
{
int length;
std::vector<int> unused;
+ unused.resize(str.length()+1);
(void) GuessEncoding(str, length, unused);
env.top(0).set_int(length);
}
@@ -1637,7 +1638,7 @@
string str = string_val.to_string();
int length = 0;
std::vector<int> offsets;
- offsets.reserve(str.length() + 1);
+ offsets.resize(str.length() + 1);
as_encoding_guess_t encoding = GuessEncoding(str, length, offsets);