Author: Armin Rigo <[email protected]>
Branch: jitframe-on-heap
Changeset: r61822:f861519ad887
Date: 2013-02-26 12:16 +0100
http://bitbucket.org/pypy/pypy/changeset/f861519ad887/
Log: Fix
diff --git a/rpython/memory/gc/minimark.py b/rpython/memory/gc/minimark.py
--- a/rpython/memory/gc/minimark.py
+++ b/rpython/memory/gc/minimark.py
@@ -639,8 +639,14 @@
# The nursery might not be empty now, because of
# execute_finalizers(). If it is almost full again,
# we need to fix it with another call to minor_collection().
- if self.nursery_free + totalsize > self.nursery_real_top:
- self.minor_collection()
+ if self.nursery_free + totalsize > self.nursery_top:
+ #
+ if self.nursery_free + totalsize > self.nursery_real_top:
+ self.minor_collection()
+ # then the nursery is empty
+ else:
+ # we just need to clean up a bit more of the nursery
+ self.move_nursery_top(totalsize)
#
result = self.nursery_free
self.nursery_free = result + totalsize
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit