db: purge temporary files without explicit modification check

When extraction failed, the user has had no opportunity to edit
any files. Just clean up.
cute-signatures
Timo Teräs 2021-11-03 16:05:21 +02:00
parent 5c0c249b78
commit d441cf523c
1 changed files with 2 additions and 1 deletions

View File

@ -2657,7 +2657,8 @@ static void apk_db_purge_pkg(struct apk_database *db,
.filename = APK_BLOB_PTR_LEN(file->name, file->namelen), .filename = APK_BLOB_PTR_LEN(file->name, file->namelen),
}; };
hash = apk_blob_hash_seed(key.filename, diri->dir->hash); hash = apk_blob_hash_seed(key.filename, diri->dir->hash);
if ((diri->dir->protect_mode == APK_PROTECT_NONE) || if (!is_installed ||
(diri->dir->protect_mode == APK_PROTECT_NONE) ||
(db->ctx->flags & APK_PURGE) || (db->ctx->flags & APK_PURGE) ||
(file->csum.type != APK_CHECKSUM_NONE && (file->csum.type != APK_CHECKSUM_NONE &&
apk_fileinfo_get(db->root_fd, name, APK_FI_NOFOLLOW | APK_FI_DIGEST(apk_dbf_digest(file)), &fi, &db->atoms) == 0 && apk_fileinfo_get(db->root_fd, name, APK_FI_NOFOLLOW | APK_FI_DIGEST(apk_dbf_digest(file)), &fi, &db->atoms) == 0 &&