gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash ChangeLog libbase/GC.cpp


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog libbase/GC.cpp
Date: Thu, 06 Mar 2008 15:47:22 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  08/03/06 15:47:22

Modified files:
        .              : ChangeLog 
        libbase        : GC.cpp 

Log message:
        don't call std::list::size() twice each frame iteration,
        as it's O(n) for GNU stdc++ lib...

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.5825&r2=1.5826
http://cvs.savannah.gnu.org/viewcvs/gnash/libbase/GC.cpp?cvsroot=gnash&r1=1.11&r2=1.12

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.5825
retrieving revision 1.5826
diff -u -b -r1.5825 -r1.5826
--- ChangeLog   6 Mar 2008 15:29:56 -0000       1.5825
+++ ChangeLog   6 Mar 2008 15:47:21 -0000       1.5826
@@ -1,5 +1,10 @@
 2008-03-06 Sandro Santilli <address@hidden>
 
+       * libbase/GC.cpp: minor thing, don't call std::list::size() twice each
+         frame iteration, as it's O(n) for GNU stdc++ lib...
+
+2008-03-06 Sandro Santilli <address@hidden>
+
        * server/button_character_instance.cpp, server/sprite_instance.cpp,
          server/video_stream_instance.cpp, server/asobj/NetConnection.cpp,
          server/asobj/NetStream.cpp, server/asobj/Sound.cpp,

Index: libbase/GC.cpp
===================================================================
RCS file: /sources/gnash/gnash/libbase/GC.cpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- libbase/GC.cpp      5 Mar 2008 11:42:36 -0000       1.11
+++ libbase/GC.cpp      6 Mar 2008 15:47:22 -0000       1.12
@@ -111,11 +111,12 @@
 void 
 GC::collect()
 {
-       if ( (_resList.size() - _lastResCount) < maxNewCollectablesCount )
+       size_t curResSize = _resList.size(); // this is O(n) on GNU stdc++ lib !
+       if ( (curResSize - _lastResCount) < maxNewCollectablesCount )
        {
 #if GNASH_GC_DEBUG  > 1
                log_debug(_("Garbage collection skipped since number of 
collectables added since last run is too low (" SIZET_FMT ")"),
-                              _resList.size() - _lastResCount);
+                              curResSize - _lastResCount);
 #endif // GNASH_GC_DEBUG
                return;
        }
@@ -125,7 +126,7 @@
 #endif
 
 #ifdef GNASH_GC_DEBUG 
-       log_debug(_("GC %p Starting collector: " SIZET_FMT " collectables"), 
(void *)this, _resList.size());
+       log_debug(_("GC %p Starting collector: " SIZET_FMT " collectables"), 
(void *)this, curResSize);
 #endif // GNASH_GC_DEBUG
 
 #ifndef NDEBUG
@@ -139,7 +140,7 @@
        // clean unreachable resources, and mark them others as reachable again
        cleanUnreachable();
 
-       _lastResCount = _resList.size();
+       _lastResCount = curResSize;
 }
 
 void




reply via email to

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