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 libbase/GC.h


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog libbase/GC.cpp libbase/GC.h
Date: Thu, 06 Mar 2008 16:58:08 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  08/03/06 16:58:07

Modified files:
        .              : ChangeLog 
        libbase        : GC.cpp GC.h 

Log message:
        ok not calling size() twice, but don't properly update the last managed
        resources count..

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.5827&r2=1.5828
http://cvs.savannah.gnu.org/viewcvs/gnash/libbase/GC.cpp?cvsroot=gnash&r1=1.12&r2=1.13
http://cvs.savannah.gnu.org/viewcvs/gnash/libbase/GC.h?cvsroot=gnash&r1=1.20&r2=1.21

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.5827
retrieving revision 1.5828
diff -u -b -r1.5827 -r1.5828
--- ChangeLog   6 Mar 2008 16:17:43 -0000       1.5827
+++ ChangeLog   6 Mar 2008 16:58:06 -0000       1.5828
@@ -1,3 +1,8 @@
+2008-03-06 Sandro Santilli <address@hidden>
+
+       * libbase/GC.{cpp,h}: ok not calling size() twice, but
+         don't properly update the last managed resources count..
+
 2008-03-06 Benjamin Wolsey <address@hidden>
 
        * server/vm/ASHandlers.cpp: implement MbOrd for SWF6+ and utf-8,

Index: libbase/GC.cpp
===================================================================
RCS file: /sources/gnash/gnash/libbase/GC.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- libbase/GC.cpp      6 Mar 2008 15:47:22 -0000       1.12
+++ libbase/GC.cpp      6 Mar 2008 16:58:07 -0000       1.13
@@ -23,10 +23,10 @@
 
 #include "GC.h"
 #include "builtin_function.h"
+#include "utility.h" // for typeName()
 
 #ifdef GNASH_GC_DEBUG
-# include "utility.h" // for typeName()
-# include "log.h"
+#include "log.h"
 #endif
 
 namespace gnash {
@@ -70,15 +70,14 @@
 #endif
 }
 
-void
+size_t
 GC::cleanUnreachable()
 {
-#ifdef GNASH_GC_DEBUG
        size_t deleted = 0;
+
 #if (GNASH_GC_DEBUG > 1)
        log_debug(_("GC %p: SWEEP SCAN"), (void*)this);
 #endif
-#endif
 
        for (ResList::iterator i=_resList.begin(), e=_resList.end(); i!=e; )
        {
@@ -106,6 +105,8 @@
                        " resources marked as unreachable"),
                        (void*)this, deleted);
 #endif
+
+       return deleted;
 }
 
 void 
@@ -138,9 +139,7 @@
        markReachable();
 
        // clean unreachable resources, and mark them others as reachable again
-       cleanUnreachable();
-
-       _lastResCount = curResSize;
+       _lastResCount = curResSize - cleanUnreachable();
 }
 
 void

Index: libbase/GC.h
===================================================================
RCS file: /sources/gnash/gnash/libbase/GC.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -b -r1.20 -r1.21
--- libbase/GC.h        6 Mar 2008 05:22:50 -0000       1.20
+++ libbase/GC.h        6 Mar 2008 16:58:07 -0000       1.21
@@ -291,7 +291,10 @@
        }
 
        /// Delete all unreachable objects, and mark the others unreachable 
again
-       void cleanUnreachable();
+       //
+       /// @return number of objects deleted
+       ///
+       size_t cleanUnreachable();
 
        ResList _resList;
 




reply via email to

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