[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/as_value.cpp
From: |
Sandro Santilli |
Subject: |
[Gnash-commit] gnash ChangeLog server/as_value.cpp |
Date: |
Fri, 24 Aug 2007 13:55:08 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Sandro Santilli <strk> 07/08/24 13:55:08
Modified files:
. : ChangeLog
server : as_value.cpp
Log message:
* server/as_value.cpp: fix build when MOVIECLIP_AS_SOFTREF is
undefined.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4095&r2=1.4096
http://cvs.savannah.gnu.org/viewcvs/gnash/server/as_value.cpp?cvsroot=gnash&r1=1.64&r2=1.65
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4095
retrieving revision 1.4096
diff -u -b -r1.4095 -r1.4096
--- ChangeLog 24 Aug 2007 10:46:10 -0000 1.4095
+++ ChangeLog 24 Aug 2007 13:55:07 -0000 1.4096
@@ -1,5 +1,7 @@
2007-08-24 Sandro Santilli <address@hidden>
+ * server/as_value.cpp: fix build when MOVIECLIP_AS_SOFTREF is
+ undefined.
* server/swf/PlaceObject2Tag.cpp (loader): remove unused variable.
* server/as_environment.{cpp,h}: use a static const for expressing
number of global registers.
Index: server/as_value.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/as_value.cpp,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -b -r1.64 -r1.65
--- server/as_value.cpp 6 Aug 2007 20:42:57 -0000 1.64
+++ server/as_value.cpp 24 Aug 2007 13:55:08 -0000 1.65
@@ -69,14 +69,6 @@
}
}
-#if 0
-std::string
-as_value::to_std_string(as_environment* env) const
-{
- return to_string(env);
-}
-#endif
-
// Conversion to const std::string&.
const std::string&
as_value::to_string(as_environment* env) const
@@ -85,9 +77,22 @@
{
case STRING:
+ /* don't need to do anything */
+ break;
+
case MOVIECLIP:
+ {
+#ifdef MOVIECLIP_AS_SOFTREF
/* don't need to do anything */
+#else
+ sprite_instance* sp = m_object_value->to_movie();
+ assert(sp); // or return as in to_sprite() ?
+ if ( sp ) {
+ m_string_value = sp->getTarget();
+ }
+#endif
break;
+ }
case NUMBER:
m_string_value = doubleToString(m_number_value);
@@ -503,7 +508,7 @@
#ifndef MOVIECLIP_AS_SOFTREF
sprite_instance* sp = m_object_value->to_movie();
- if ( ! sp ) return NULL;
+ if ( ! sp ) return NULL; // shoudl we assert(sp) instead ?
if ( sp->isUnloaded() )
{
log_error(_("MovieClip value is a dangling reference: "
@@ -817,6 +822,10 @@
bool
as_value::equalsSameType(const as_value& v) const
{
+#ifdef GNASH_DEBUG_EQUALITY
+ static int count=0;
+ log_debug("equalsSameType(%s, %s) called [%d]", to_debug_string().c_str(),
v.to_debug_string().c_str(), count++);
+#endif
assert(m_type == v.m_type);
switch (m_type)
{
@@ -832,8 +841,14 @@
return m_boolean_value == v.m_boolean_value;
case STRING:
+ return m_string_value == v.m_string_value;
+
case MOVIECLIP:
+#ifdef MOVIECLIP_AS_SOFTREF
return m_string_value == v.m_string_value;
+#else
+ return m_object_value == v.m_object_value;
+#endif
case NUMBER:
{
@@ -912,7 +927,9 @@
else if (v.m_type == MOVIECLIP)
{
#ifndef MOVIECLIP_AS_SOFTREF
- set_sprite(*(v.to_sprite()));
+ sprite_instance* sp =
dynamic_cast<sprite_instance*>(v.m_object_value);
+ assert(sp);
+ set_sprite(*sp);
#else
set_sprite(v.m_string_value);
#endif
@@ -1094,7 +1111,11 @@
as_value::setReachable() const
{
#ifdef GNASH_USE_GC
+#ifdef MOVIECLIP_AS_SOFTREF
if ( m_type == OBJECT || m_type == AS_FUNCTION )
+#else
+ if ( m_type == OBJECT || m_type == AS_FUNCTION || m_type == MOVIECLIP)
+#endif
{
m_object_value->setReachable();
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash ChangeLog server/as_value.cpp,
Sandro Santilli <=