[Top][All Lists]
[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;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash ChangeLog libbase/GC.cpp libbase/GC.h,
Sandro Santilli <=