path: root/FuseArchive/ChunkFile.py
diff options
authorSteve Slaven <bpk@hoopajoo.net>2009-11-03 06:47:18 (GMT)
committerSteve Slaven <bpk@hoopajoo.net>2009-11-03 06:47:18 (GMT)
commit6dc398f36d48c25ef2bf78e00cb337ecab205227 (patch)
treee8ef0f76d7f2a2c56fc378ee6b2a72696281d42b /FuseArchive/ChunkFile.py
parent7df2be1716f4faeba5138287e1596d2395c777bb (diff)
Changed to delete the whole dict and added note about similar leak in
sample xmp.py so it appears to be in the fuse bindings
Diffstat (limited to 'FuseArchive/ChunkFile.py')
1 files changed, 11 insertions, 4 deletions
diff --git a/FuseArchive/ChunkFile.py b/FuseArchive/ChunkFile.py
index c33ae73..8e4f2eb 100644
--- a/FuseArchive/ChunkFile.py
+++ b/FuseArchive/ChunkFile.py
@@ -407,10 +407,17 @@ class ChunkFile(object):
# There is some kind of mem leak, ChunkFile objects end up in a
# tuple of [obj,True] for every object written and never get freed,
- # maybe a fuse bug?
- del self.chunks
- del self.chunk
- del self.original_chunks
+ # maybe a fuse bug? Just trying to minimize the damage here by
+ # freeing the big chunks of memory.
+ #
+ # Note that you can see this same problem in xmp.py, if you run it
+ # in pdb then use objgraph to see the top objects XmpFile will be
+ # near the top with this odd reference in a tuple that is owned by
+ # nothing
+ #del self.chunks
+ #del self.chunk
+ #del self.original_chunks
+ self.__dict__ = {}
def _fflush(self):
if self.wr and self.modified: