From 4d50ab9badcd57b769644450d3d6872ebcc329f2 Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Mon, 3 Apr 2017 16:52:17 +0200 Subject: [PATCH] ignore cache on key name change, instead of crashing In 6c2cf2ccdd7130a034e50f9bea481351d475a272, the names of some essential data bits changed. If those names are not in the tmp/apkcache, then `fdroid update` shouldn't crash but instead just ignore that cache entry. tmp/apkcache should be deleted since the metadata version was bumped, but I guess that does not always happen. --- fdroidserver/update.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fdroidserver/update.py b/fdroidserver/update.py index f8bf731f..6412029b 100644 --- a/fdroidserver/update.py +++ b/fdroidserver/update.py @@ -682,7 +682,7 @@ def scan_repo_files(apkcache, repodir, knownapks, use_date_from_file=False): repo_file['added'] = a else: repo_file['added'] = datetime(*a[:6]) - if repo_file['hash'] == shasum: + if repo_file.get('hash') == shasum: logging.debug("Reading " + name + " from cache") usecache = True else: @@ -759,7 +759,7 @@ def scan_apk(apkcache, apkfilename, repodir, knownapks, use_date_from_apk): usecache = False if apkfilename in apkcache: apk = apkcache[apkfilename] - if apk['hash'] == shasum: + if apk.get('hash') == shasum: logging.debug("Reading " + apkfilename + " from cache") usecache = True else: