gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash ChangeLog server/StringPredicates.h serve...


From: Bastiaan Jacques
Subject: [Gnash-commit] gnash ChangeLog server/StringPredicates.h serve...
Date: Sat, 08 Mar 2008 00:04:20 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Bastiaan Jacques <bjacques>     08/03/08 00:04:20

Modified files:
        .              : ChangeLog 
        server         : StringPredicates.h 
        server/vm      : ASHandlers.cpp 

Log message:
                * server/StringPredicates.h: Use boost string algorithms 
instead of
                the current home-grown ones.
                * server/vm/ASHandlers.cpp: getTime() returns int, so there's 
no point
                in rounding it to the nearest integer.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.5849&r2=1.5850
http://cvs.savannah.gnu.org/viewcvs/gnash/server/StringPredicates.h?cvsroot=gnash&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/gnash/server/vm/ASHandlers.cpp?cvsroot=gnash&r1=1.206&r2=1.207

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.5849
retrieving revision 1.5850
diff -u -b -r1.5849 -r1.5850
--- ChangeLog   7 Mar 2008 23:50:53 -0000       1.5849
+++ ChangeLog   8 Mar 2008 00:04:19 -0000       1.5850
@@ -1,3 +1,10 @@
+2008-03-07 Bastiaan Jacques <address@hidden>
+
+       * server/StringPredicates.h: Use boost string algorithms instead of
+       the current home-grown ones.
+       * server/vm/ASHandlers.cpp: getTime() returns int, so there's no point
+       in rounding it to the nearest integer.
+
 2008-03-07 Russ Nelson <address@hidden>
 
        * Fix typos and unwieldy grammar in doc/C/*.xml and doc/C/userman/*.xml

Index: server/StringPredicates.h
===================================================================
RCS file: /sources/gnash/gnash/server/StringPredicates.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- server/StringPredicates.h   5 Mar 2008 03:55:58 -0000       1.10
+++ server/StringPredicates.h   8 Mar 2008 00:04:19 -0000       1.11
@@ -24,64 +24,30 @@
 #include "gnashconfig.h"
 #endif
 
-#include <string> 
-#include <cctype> // for toupper,tolower
-
-#include <cassert> // for inlines
+#include <boost/algorithm/string/predicate.hpp>
 
 namespace gnash {
 
-/// A case-insensitive string comparator (probably not very performant)
+/// A case-insensitive string comparator
 class StringNoCaseLessThen {
 public:
        bool operator() (const std::string& a, const std::string& b) const
        {
-               size_t a_len = a.length();
-               size_t b_len = b.length();
-
-               size_t cmplen = a_len < b_len ? a_len : b_len;
-
-               for (size_t i=0; i<cmplen; ++i)
-               {
-                       char cha = toupper(a[i]);
-                       char chb = toupper(b[i]);
-
-                       if (cha < chb) return true;
-                       else if (cha > chb) return false;
-                       assert(cha==chb);
-               }
-
-               // strings are equal for whole lenght of a,
-               // a is LessThen b only if 'b' contains more
-               // characters then 'a' (if same number of
-               // chars 'a' is NOT less then 'b')
-
-               if ( a_len < b_len ) return true;
-               return false; // equal or greater
-
+               return boost::ilexicographical_compare(a, b);
        }
 };
 
-/// A case-insensitive string equality operator (probably not very performant)
+
+/// A case-insensitive string equality operator
 class StringNoCaseEqual {
 public:
        bool operator() (const std::string& a, const std::string& b) const
        {
                if ( a.length() != b.length() ) return false;
-               for (size_t i=0; i<a.length(); ++i)
-               {
-                       char cha = toupper(a[i]);
-                       char chb = toupper(b[i]);
-
-                       if (cha != chb) return false;
-               }
-
-               return true;
-
+               return boost::iequals(a, b);
        }
 };
 
-
 } // namespace gnash
 
 #endif // GNASH_STRINGPREDICATES_H

Index: server/vm/ASHandlers.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/vm/ASHandlers.cpp,v
retrieving revision 1.206
retrieving revision 1.207
diff -u -b -r1.206 -r1.207
--- server/vm/ASHandlers.cpp    6 Mar 2008 23:16:22 -0000       1.206
+++ server/vm/ASHandlers.cpp    8 Mar 2008 00:04:20 -0000       1.207
@@ -1706,7 +1706,7 @@
 //     GNASH_REPORT_FUNCTION;
        
        as_environment& env = thread.env;
-       env.push(floorf(VM::get().getTime()));
+       env.push(VM::get().getTime());
 }
 
 void




reply via email to

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