[Top][All Lists]
[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: |
Tue, 02 Oct 2007 12:52:49 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Sandro Santilli <strk> 07/10/02 12:52:49
Modified files:
. : ChangeLog
server : array.cpp
Log message:
* server/array.cpp (as_value_custom call operator): use the
environment passed to us, not a newly created one.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4498&r2=1.4499
http://cvs.savannah.gnu.org/viewcvs/gnash/server/array.cpp?cvsroot=gnash&r1=1.80&r2=1.81
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4498
retrieving revision 1.4499
diff -u -b -r1.4498 -r1.4499
--- ChangeLog 2 Oct 2007 12:17:46 -0000 1.4498
+++ ChangeLog 2 Oct 2007 12:52:48 -0000 1.4499
@@ -1,5 +1,10 @@
2007-10-02 Sandro Santilli <address@hidden>
+ * server/array.cpp (as_value_custom call operator): use the
+ environment passed to us, not a newly created one.
+
+2007-10-02 Sandro Santilli <address@hidden>
+
* server/as_object.cpp (callMethod): fix order in which
args are pushed on the stack [the version taking 2 args].
* server/asobj/MovieClipLoader.cpp: initialize MovieClipLoader
Index: server/array.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/array.cpp,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -b -r1.80 -r1.81
--- server/array.cpp 19 Sep 2007 14:20:48 -0000 1.80
+++ server/array.cpp 2 Oct 2007 12:52:49 -0000 1.81
@@ -360,12 +360,21 @@
bool operator() (const as_value& a, const as_value& b)
{
as_value cmp_method(&_comp);
- as_environment env;
as_value ret(0);
- env.push(a);
- env.push(b);
- ret = call_method(cmp_method, &env, _object, 2, 1);
+#ifndef NDEBUG
+ size_t prevStackSize = _env.stack_size();
+#endif
+
+ _env.push(a);
+ _env.push(b);
+ ret = call_method(cmp_method, &_env, _object, 2,
_env.stack_size()-1);
+ _env.drop(2);
+
+#ifndef NDEBUG
+ assert(prevStackSize == _env.stack_size());
+#endif
+
return (*_zeroCmp)((int)ret.to_number(&_env));
}
};
@@ -915,6 +924,7 @@
{
boost::intrusive_ptr<as_array_object> array =
ensureType<as_array_object>(fn.this_ptr);
+
as_environment& env = fn.env();
uint8_t flags = 0;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash ChangeLog server/array.cpp,
Sandro Santilli <=