From eedf969f676359badd11509f2d07eb15be37a959 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Borgstr=C3=B6m?= Date: Mon, 29 Mar 2010 21:40:09 +0200 Subject: [PATCH] Fixed archive delete bug. --- dedupestore/archiver.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dedupestore/archiver.py b/dedupestore/archiver.py index cf1935ea1..50e4476a5 100644 --- a/dedupestore/archiver.py +++ b/dedupestore/archiver.py @@ -1,5 +1,4 @@ import os -import sys import hashlib import zlib import cPickle @@ -32,6 +31,7 @@ class Archive(object): def open(self, name): archive = cPickle.loads(zlib.decompress(self.store.get(NS_ARCHIVES, name))) self.items = archive['items'] + self.name = archive['name'] for i, (id, sum, csize, osize) in enumerate(archive['chunks']): self.chunk_idx[i] = id @@ -82,7 +82,8 @@ class Archive(object): for item in self.items: if item['type'] == 'FILE': for c in item['chunks']: - cache.chunk_decref(c) + id = self.chunk_idx[c] + cache.chunk_decref(id) self.store.commit() cache.archives.remove(self.name) cache.save()