gnash-commit
[Top][All Lists]
Advanced

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

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


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/as_environment.cpp
Date: Sat, 09 Dec 2006 00:38:29 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  06/12/09 00:38:29

Modified files:
        .              : ChangeLog 
        server         : as_environment.cpp 

Log message:
                * server/as_environment.cpp (findLocal): it seems I missed 
something.
                  bring back the crappy code while keeping the external 
interface
                  cleaner (will check later what's the difference there..).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.1900&r2=1.1901
http://cvs.savannah.gnu.org/viewcvs/gnash/server/as_environment.cpp?cvsroot=gnash&r1=1.36&r2=1.37

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.1900
retrieving revision 1.1901
diff -u -b -r1.1900 -r1.1901
--- ChangeLog   8 Dec 2006 23:46:46 -0000       1.1900
+++ ChangeLog   9 Dec 2006 00:38:28 -0000       1.1901
@@ -1,5 +1,11 @@
 2006-12-08 Sandro Santilli <address@hidden>
 
+       * server/as_environment.cpp (findLocal): it seems I missed something.
+         bring back the crappy code while keeping the external interface
+         cleaner (will check later what's the difference there..).
+
+2006-12-08 Sandro Santilli <address@hidden>
+
        * server/: swf.h, vm/ASHandlers.{cpp,h}:
          Renamed ACTION_DELETE to ACTION_DELETE2
          and ACTION_DELETEVAR to ACTION_DELETE, to reflect

Index: server/as_environment.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/as_environment.cpp,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -b -r1.36 -r1.37
--- server/as_environment.cpp   8 Dec 2006 23:11:25 -0000       1.36
+++ server/as_environment.cpp   9 Dec 2006 00:38:28 -0000       1.37
@@ -16,7 +16,7 @@
 
 //
 
-/* $Id: as_environment.cpp,v 1.36 2006/12/08 23:11:25 strk Exp $ */
+/* $Id: as_environment.cpp,v 1.37 2006/12/09 00:38:28 strk Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -527,15 +527,41 @@
 as_environment::LocalFrames::iterator
 as_environment::findLocal(const std::string& varname)
 {
-       LocalFrames::iterator itEnd=endLocal();
-       for (LocalFrames::iterator it=beginLocal();
+#if 0
+       LocalFrames::reverse_iterator itEnd=m_local_frames.rend();
+       for (LocalFrames::reverse_iterator it=m_local_frames.rbegin();
                        it != itEnd;
                        ++it)
        {
-               frame_slot& slot = *it;
-               if ( slot.m_name == varname ) return it;
+               const frame_slot& slot = *it;
+               if ( slot.m_name.length() == 0 )
+               {
+                       // End of local frame; stop looking.
+                       return itEnd;
+               }
+               else if ( slot.m_name == varname )
+               {
+                       return it;
+               }
        }
        return itEnd;
+#else
+       for (int i = m_local_frames.size() - 1; i >= 0; i--)
+       {
+               const frame_slot&       slot = m_local_frames[i];
+               if (slot.m_name.length() == 0)
+               {
+                       // End of local frame; stop looking.
+                       return endLocal();
+               }
+               else if (slot.m_name == varname)
+               {
+                       // Found it.
+                       return beginLocal()+i;
+               }
+       }
+       return endLocal();
+#endif
 }
 
 }




reply via email to

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