diff options
author | Helmut Grohne <helmut@subdivi.de> | 2013-02-20 22:33:54 +0100 |
---|---|---|
committer | Helmut Grohne <helmut@subdivi.de> | 2013-02-20 22:33:54 +0100 |
commit | 5b5dfebf7a950504c2a65d08273a58ba85df912a (patch) | |
tree | a73560f1169455b81598554ad29d23ba477c0ba4 /webapp.py | |
parent | 072f38cdfae031bcfb3c18cd0ada89f9b9d4f94b (diff) | |
download | debian-dedup-5b5dfebf7a950504c2a65d08273a58ba85df912a.tar.gz |
fix comparison of conflicting packages
Diffstat (limited to 'webapp.py')
-rwxr-xr-x | webapp.py | 15 |
1 files changed, 11 insertions, 4 deletions
@@ -164,11 +164,18 @@ class Application(object): content_type="text/html") def show_detail(self, package1, package2): - details1 = self.get_details(package1) - details2 = self.get_details(package2) + if package1 == package2: + details1 = details2 = self.get_details(package1) + + self.cur.execute("SELECT a.filename, b.filename, a.size, a.function, a.hash FROM content AS a JOIN content AS b ON a.function = b.function AND a.hash = b.hash WHERE a.package = ? AND b.package = ? AND a.filename != b.filename;", + (package1, package1)) + else: + details1 = self.get_details(package1) + details2 = self.get_details(package2) + + self.cur.execute("SELECT a.filename, b.filename, a.size, a.function, a.hash FROM content AS a JOIN content AS b ON a.function = b.function AND a.hash = b.hash WHERE a.package = ? AND b.package = ?;", + (package1, package2)) - self.cur.execute("SELECT a.filename, b.filename, a.size, a.function, a.hash FROM content AS a JOIN content AS b ON a.function = b.function AND a.hash = b.hash WHERE a.package = ? AND b.package = ? AND a.filename != b.filename;", - (package1, package2)) shared = dict() for filename1, filename2, size, function, hashvalue in self.cur.fetchall(): shared.setdefault((filename1, filename2, size), dict())[function] = hashvalue |